Excel VBA質問箱 IV

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

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


12123 / 13644 ツリー ←次へ | 前へ→

【11752】セルの数値によってシートにコピーする方... 雪だるま 04/3/15(月) 21:00 質問
【11753】Re:セルの数値によってシートにコピーする... Uta 04/3/15(月) 21:24 回答
【11755】Re:セルの数値によってシートにコピーする... 雪だるま 04/3/15(月) 21:47 質問
【11814】Re:セルの数値によってシートにコピーする... Uta 04/3/16(火) 21:38 回答
【11976】Re:セルの数値によってシートにコピーする... 雪だるま 04/3/20(土) 0:54 質問
【12245】Re:セルの数値によってシートにコピーする... 雪だるま 04/3/28(日) 1:29 お礼

【11752】セルの数値によってシートにコピーする方...
質問  雪だるま  - 04/3/15(月) 21:00 -

引用なし
パスワード
   シート1のA1に入力した数値1から20によって
シートBの表をシート1から20にコピーする方法を教えてください。
マクロでコピーしようと思ったらボタン数が20個になるので
よい方法を教えてください

【11753】Re:セルの数値によってシートにコピーす...
回答  Uta  - 04/3/15(月) 21:24 -

引用なし
パスワード
   ▼雪だるま さん:
>シート1のA1に入力した数値1から20によって
>シートBの表をシート1から20にコピーする方法を教えてください。
>マクロでコピーしようと思ったらボタン数が20個になるので
>よい方法を教えてください

Private Sub Test_Copy()

TG = Sheet1.Range("A1").Value
Worksheets("B").Range("A1:Z100").Copy_
   Destination:=Worksheets("Sheet" & TG).Range("A1")

End Sub


こんな感じでどうでしょうか。試してみてください。

【11755】Re:セルの数値によってシートにコピーす...
質問  雪だるま  - 04/3/15(月) 21:47 -

引用なし
パスワード
   ▼Uta さん:

>TG = Sheet1.Range("A1").Value
>Worksheets("B").Range("A1:Z100").Copy_
>   Destination:=Worksheets("Sheet" & TG).Range("A1")

構文エラーになっちゃいました
シート1のA1の値を参照してBのA1からZ100をコピーしい
シート1−20はTGになるんですか

【11814】Re:セルの数値によってシートにコピーす...
回答  Uta  - 04/3/16(火) 21:38 -

引用なし
パスワード
   ▼雪だるま さん:
>▼Uta さん:
>
>>TG = Sheet1.Range("A1").Value
>>Worksheets("B").Range("A1:Z100").Copy_
>>   Destination:=Worksheets("Sheet" & TG).Range("A1")
>
>構文エラーになっちゃいました
>シート1のA1の値を参照してBのA1からZ100をコピーしい
>シート1−20はTGになるんですか

返事が遅くなってしまって申し訳ありません。
スペースの位置がおかしかったようです。

TG = Sheet1.Range("A1").Value
Worksheets("B").Range("A1:Z100").Copy _
   Destination:=Worksheets("Sheet" & TG).Range("A1")

これでもう一度試してみてください。
だめなようでしたらもう一度連絡ください。
動作は確認済みです。

また上の構文はあくまでもシートネームが
Sheet1 sheet2 となっている場合に限ります。
もしシートネームを任意の名前に書き直して
あるとすると作動しません。

その場合は以下を試してみてください。

Private Sub Test_Copy2()
cnt = 1
For Each d In Worksheets
  TG = Sheet1.Range("A1").Value
  
  If TG = cnt Then
    sheetname = d.Name
  End If
  
  cnt = cnt + 1
Next

Worksheets("B").Range("A1:Z100").Copy _
  Destination:=Worksheets(sheetname).Range("A1")

End Sub

【11976】Re:セルの数値によってシートにコピーす...
質問  雪だるま  - 04/3/20(土) 0:54 -

引用なし
パスワード
   ▼Uta さん:
>TG = Sheet1.Range("A1").Value
>Worksheets("B").Range("A1:Z100").Copy _
>   Destination:=Worksheets("Sheet" & TG).Range("A1")
>
すいません やっぱり構文エラーになります
sheet1のA1のセルの入力値のシート番号にシートBのA1〜Z100を
コピーすると思っていいんですか

【12245】Re:セルの数値によってシートにコピーす...
お礼  雪だるま  - 04/3/28(日) 1:29 -

引用なし
パスワード
   ありがとうございました。
無事出来ました、お礼が大変遅くなり申し訳ありませんでした。
ハードディスクのクラッシュにより復旧の方に追い回されて遅くなりました。
又宜しくお願いします。

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