Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


14425 / 76738 ←次へ | 前へ→

【67809】任意を数字を元に増えてコピーする方法
質問  屋久島  - 11/1/11(火) 13:31 -

引用なし
パスワード
   VBA初心者で色々試してるのですが例えば

シート1 A1に任意の数字を入れると
シート2 B1:『B6』をコピーして
シート1 C2にコピーする方法がわからないです><

Worksheets("Sheet2").Range("B1:『B6』").Copy _
Destination:=Worksheets("Sheet1").Range("C2")

式的にはこんな感じだと思ったのですが
『B6』のところで単純に Range("B1:『B6』+A1にいれた任意の数字")と出来ればいいのですが、出来ないっぽい?ので、どうすればいいのか困ってます。

また、試しにifで作ってもみましたが
If Range("A1").Value = 1 Then
    セル範囲 = "B1:B6"
    GoTo コピー貼り付けする
  ElseIf Range("A1").Value = 2 Then
    セル範囲 = "B1:B7"
    GoTo コピー貼り付けする
  ElseIf Range("A1").Value = 3 Then
    セル範囲 = "B1:B8"
    GoTo コピー貼り付けする
  Else
End If

  MsgBox "A1セルの値が不正です。", , "エラー"
  Exit Sub

コピー貼り付けする:
  Range(セル範囲).Copy                        'コピーする
  Range("C2").PasteSpecial Paste:=xlPasteValues '値を貼り付け

↑だと、コピー参照先をシート2のB1:B6にうまくできず
シート1のB1:B6をコピーしてる事になる上、A1に3と入れたら
B1:B8をC2コピーしてくれるのですが、その後A1に1と入れたら
B1:B6をコピーするのでB7・B8に入ってる数字が消えてくれません><

3 hits

【67809】任意を数字を元に増えてコピーする方法 屋久島 11/1/11(火) 13:31 質問
【67812】Re:任意を数字を元に増えてコピーする方法 Abebobo 11/1/11(火) 14:30 発言
【67813】Re:任意を数字を元に増えてコピーする方法 屋久島 11/1/11(火) 15:43 質問

14425 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free