Excel VBA質問箱 IV

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

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


2476 / 13645 ツリー ←次へ | 前へ→

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

【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に入ってる数字が消えてくれません><

【67812】Re:任意を数字を元に増えてコピーする方法
発言  Abebobo  - 11/1/11(火) 14:30 -

引用なし
パスワード
   Sub Test()
Dim Ch_N As Variant
Dim a   As Long


Ch_N = IsNumeric(Range("A1").Value)
If Not Ch_N Then
 MsgBox "数字じゃない"
 Range("A1").Select: Exit Sub
End If
a = Range("A1").Value
Range("B1").Resize(6 + a).Select

End Sub

こんなことでしょうか?

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

引用なし
パスワード
   Abeboboさん、ご回答ありがとうございます
試しに打ち込んでみたのですが、上手く作動せず…><

私の質問の仕方が下手で申し訳ないです;;
あと、縦と横を勘違いしてました(ごめんなさい…)

シート1 A1 に任意の数字を入れる場所があり
シート2 B2+↑数字分の横列のコピーを
シート1に戻りC2に返したいんです><

例えばシート1の数字が3なら
シート2のB2・C2・D2 をコピーして
シート1のC2に張りたいんです、ただその際に
10と数字を入れた後に5と数字を入れたら最初に入れた数字分と後で入れた数字分で
5差があるので、その6〜10はちゃんと消えるようにしたいんです><
数字じゃない場合はAbeboboさんに教えてもらえたとおりで無事出来たのですが
任意の数字が『0』の時の説明が無かったですね><
0の時はResize(0 + a)と出来れば幸いなのですが…試したところ
0は無理?っぽかったので、どうにか出来ないでしょうか?

なんだか、また説明が変になってしまって申し訳ないです><。

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