エクセル VBAで別のシートの文字列を他のシートにコピーするには
どのようなコードを記入すればよろしいでしょうか?
同一ブック内に「Sheet1」と「リスト」のワークシートがある場合、
次の順序でリストのデータを他のシートに貼り付けるには
どのようにコードを入力すればよろしいでしょうか?
(1)2行目からのリストの使用行数を調べる。
※リストの使用行数は変動するため、決まっていません。
(2)Sheet1は、32行しか入力できないため、(1)で求めたリストの行数から
ワークシートを必要数コピーする。
例 リストの行数が100の場合、Sheet1を3つコピーし、計4つにする。
(3)リストの図番(A列)、名称(C列)、金額(E列)をコピーし Sheet1のA,B,C列に「値」で貼り付ける。
(4)Sheet1のA,B,C列に32行貼り付け終わったら(2)でコピーした次のシートに続きのリストを貼る。
(5)リストの最後(文字が記入してある箇所)まで他のシートへのコピーが終わるまで
ワークシートを変えて続ける。
以上です。
よろしくお願い致します。
エクセルは2003、2007使用しております。
No.1
- 回答日時:
こんばんは!
一例です。
標準モジュールにコピー&ペーストしてマクロを実行してみてください。
Sub test()
Dim i As Long, ws As Worksheet
Set ws = Worksheets("リスト")
For i = 2 To ws.Cells(Rows.Count, 1).End(xlUp).Row Step 32
Worksheets.Add after:=Worksheets(Worksheets.Count)
ws.Rows(1).Copy Destination:=Worksheets(Worksheets.Count).Cells(1, 1)
ws.Cells(i, 1).Resize(32, 5).Copy
Worksheets(Worksheets.Count).Cells(Rows.Count, 1).End(xlUp).Offset(1).Select
Selection.PasteSpecial Paste:=xlValues
With Worksheets(Worksheets.Count)
.Columns(4).Delete
.Columns(2).Delete
End With
Next i
End Su
※ Sheet2は全く無視して、「リスト」Sheetの1行目を挿入Sheetにコピーしています。
参考になりますかね?m(_ _)m
No.2ベストアンサー
- 回答日時:
淡々と、シートを増やしてコピー貼り付けていくのが一番簡単です。
sub macro1()
dim r as long
for r = 2 to worksheets("リスト").range("A65536").end(xlup).row step 32
’シートを増やす
worksheets("Sheet1").copy after:=worksheets(worksheets.count)
’転記する
range("A2:A33").value = worksheets("リスト").cells(r, "A").resize(32, 1).value
range("B2:B33").value = worksheets("リスト").cells(r, "C").resize(32, 1).value
range("C2:C33").value = worksheets("リスト").cells(r, "E").resize(32, 1).value
next r
end sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) エクセルマクロ オートフィルターでで選択コピー 2 2022/04/18 11:05
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Excel(エクセル) excelにおける転記マクロの書き方 2 2023/05/12 03:16
- Visual Basic(VBA) excelにて、特定の列に数字入力してあれば、入力してある行コピーして 別ファイルに張り付ける 2 2022/08/11 05:33
- Visual Basic(VBA) コード名シートA列と集計シートA列のコードが一致したら、コード名シートA5からk12の範囲をコピーし 1 2022/08/29 23:46
- Excel(エクセル) シートが違う2枚のエクセルシートにある数値を別シートにコピーしたい(VBA?) 8 2022/03/31 12:24
- Visual Basic(VBA) 集計シートA列のコードと一致する右に並んだシート名(コード)の3行目から10行目をコピーして貼り付け 4 2022/08/18 15:24
- Excel(エクセル) Excelの複数ファイルの複数行を別ファイル1つのシートにVBA、マクロで集約する方法 5 2022/09/13 06:30
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excelのInitializeイベントとAc...
-
WindowsでのPythonの挙動について
-
Excel・Word リサーチ機能を無...
-
配列数式の解除
-
特定のPCだけ動作しないVBAマク...
-
String""から型'Double'への変...
-
エクセルで特定の列が0表示の場...
-
UserForm1.Showでエラーになり...
-
教えて下さい
-
メッセージボックスのOKボタ...
-
-2147418107 (&H80010005)
-
一つのTeratermのマクロで複数...
-
VBAでfunctionを利用しようとし...
-
EXCELマクロでのThisisWor...
-
Excel マクロ VBA プロシー...
-
【マクロ】1つのマクロの中に...
-
VBA データ(特定値)のある最...
-
VBA 空白セルを削除ではない方...
-
2つ以上の変数を比較して最大数...
-
フランスの生年月日(jj/mm/aaaa)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelのInitializeイベントとAc...
-
ACCESSのVBAにてExcelのシ...
-
Excelマクロ 別シートへ連続コ...
-
エクセルVBAで名前の決まってい...
-
VBAで繰り返し処理の速度を...
-
「シートを削除しますか」のメ...
-
excel
-
VBAでシートをまたぐ処理の方法
-
VBA処理でこんな条件処理ってで...
-
エクセルVBAでブックの分割
-
オートシェイプの不具合について
-
同一ブック内・別シートの内容...
-
エクセル2010の内容を次のシー...
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
UserForm1.Showでエラーになり...
-
Excel マクロ VBA プロシー...
-
配列数式の解除
-
メッセージボックスのOKボタ...
おすすめ情報