今、excelで作った、表データを、同じくエクセルで作った雛形にデータを入れるマクロを作っていますが、初心者の為出来ません。
明日の夜までに完成させろといわれている為いろいろ調べましたが、判らないので力を貸してください。
内容は、約700件の表データで、
地区(数字にて区別してます)・名前・電話番号を
雛形に移していくものです。
雛形にも、地区・名前・電話番号を入れるセルを用意してあります。
雛形が、40件づつで、そのたびに、同じ地区の件数を出さないと駄目です。
それを、シート追加しながら最後まで終わらせるというものです。
もっと調べる時間があれば、調べたことも書けるのですが、そこまで出来ていません。
いまいち質問の仕方もわかりませんがよろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
VBAはたまにしか使わないので、構文自体怪しいのですが。
一応以下のは、excelで確認しました。
Sub Macro1()
Dim I As Integer
Set wk = ThisWorkbook
Set Base = wk.ActiveSheet
Set NewSheet = Base
Dim tmp
I = 0
Do While (I < 1)
Set NewSheet = wk.Worksheets.Add(After:=NewSheet)
'Set NesSheet = Worksheets("雛形").Copy After:=NewSheet
NewSheet.Name = "シート(" & I & ")"
NewSheet.Activate
NewSheet.Range("A1").Value = Base.Range("A1").Value
NewSheet.Range("A2").Value = Base.Range("B1").Value
NewSheet.Range("A3").Value = Base.Range("C1").Value
I = I + 1
Set NesSheet = Nothing
Loop
Set Base = Nothing
End Sub
基本的には、こんな感じになるかと思います。
この例は、A1-A3の(横1行)を新しいシートのA1-C1(縦1列)にコピーします。
例ではワークシートを作ってますが、雛形を使わなければ成らないのならコメントアウトされている部分のようにコピーすればよいでしょう。
で雛形にある挿入する箇所のセルを指定してやればよいです。
RangeはRange("A" & i) や Cells(i,k)のように指定することも出来ます。
その700件のデータの1件1件が複数行にまたがる場合は
別な変数 k 等を作って k=k+2 みたいに、増加分の管理をしないといけないでしょう。
>雛形が、40件づつで、そのたびに、同じ地区の件数を出さないと駄目です。
の説明がよくわからないので、その辺は含まれていません。
40件ごとに1つのシートを作るという事なら、
Dim cnt as integer=0 とでもして
cnt=cnt+1 とかやって、
if cnt>=40 then みたいな感じでやればよろしいのではないかと。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) excelの列幅高さが勝手に変わる(特定のPCだけ) 8 2022/07/14 16:51
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Excel(エクセル) マクロVBAのフォルダ階層別で検索の方法 4 2022/04/03 23:23
- Excel(エクセル) Excelについて教えてください。 帳票データがあります。 アクセスに取り込むため、 データ形式にし 1 2022/06/08 19:59
- Excel(エクセル) VBA ふたつの同じ様式シートのセルをコピーしたい 2 2023/03/08 15:28
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
エクセルVBAでダブルクリックを...
-
別のシートを参照して計算する方法
-
excelのマクロで該当処理できな...
-
VBA 存在しないシートを選...
-
エクセル・マクロ シートの非...
-
同じ作業を複数のシートに実行...
-
【ExcelVBA】全シートのセルの...
-
VBAで同じシート名のコピー時は...
-
エクセルのマクロでアクティブ...
-
XL:BeforeDoubleClickが動かない
-
ExcelのVBAを使い、複数シート...
-
VBAで指定シート以外の選択
-
VBA 入力月で該当シートを選択...
-
実行時エラー'1004': WorkSheet...
-
エクセル 連続保存マクロ
-
VBAで大量のファイルをシート名...
-
シートが保護されている状態で...
-
VBAエクセルの非アクティブシー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
VBAで大量のファイルをシート名...
-
ユーザーフォームに入力したデ...
-
excelのマクロで該当処理できな...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
VBA 存在しないシートを選...
-
Excelマクロのエラーを解決した...
-
特定の文字を含むシートだけマ...
-
実行時エラー'1004': WorkSheet...
-
XL:BeforeDoubleClickが動かない
-
シートが保護されている状態で...
-
実行時エラー1004「Select メソ...
-
【Excel VBA】Worksheets().Act...
-
ブック名、シート名を他のモジ...
-
エクセルのシート名変更で重複...
-
ExcelのVBAのマクロで他のシー...
-
Excel VBA 複数行を数の分だけ...
-
エクセルのマクロについて教え...
-
VBA 最終行まで数式をコピーする
おすすめ情報