画像のようなイメージです。
AブックとBブックがあります
①Aブックのヘッダーから下の1行分のデータを取り、Bブックの対象箇所に格納(印刷範囲で分けられた箇所)
②Aブックのヘッダーから下のデータ行分Bブックに印刷範囲設定
③Aブックのヘッダーから下のデータ行分が10以上になる場合、Bブックに新シート作成し①②と同様の流れ
⇒データは続きから
データは続きからの例
Aブックのヘッダーから下のデータが25だった場合、BブックにはSheet1(10行分),Sheet2(10行分),Sheet3(5行分)作成され、それぞれ該当の箇所にデータが格納されている
No.2ベストアンサー
- 回答日時:
こんばんは
方法を回答をしてもほぼ無視の様ですし、何度も連呼しているようなので、「教えて」ではなくて丸投げで「作れ」ということなのかなと・・
https://oshiete.goo.ne.jp/qa/13493779.html
https://oshiete.goo.ne.jp/qa/13494191.html
https://oshiete.goo.ne.jp/qa/13494327.html
しかし、その割には漠とした質問を繰り返しているので、コードにはなりようもないのだけれど、無理矢理コード化してみるなら・・
不明点は勝手に解釈。
・「表」というものの説明がないし範囲も不明なので、シートのB2セルの「CurrentRegion」で取れる形態になっているものと仮定。
(列数はB:Eの3列に固定)
・ブックBというものの構成が不明なので、全て新しいシートに転記することにする。
・ 同じく、他のシート名称が不明なので、シート名は成り行きのまま。
(既存のシートに同名が存在する場合、その名称は使えない為)
・図ではB:G列を結合しているようにも見えるが、1行分しかデータがないのでそのままB列に転記。
(書式はデフォルト設定のまま)
・改ページはA:I列までを固定横幅として設定。
・両ブックとも開いている状態と仮定。
※ 多分、いろいろ違うだろうとは思いますが不明なので・・
あとはお好きにどうぞ。
Sub Q_13494327()
Dim sh1 As Worksheet, sh2 As Worksheet
Dim tblRange As Range, targetRange As Range
Dim r As Long, i As Long
Dim tTitle
With Workbooks("ブックAの名称").Worksheets("表のあるシート名称")
Set tblRange = .Range("B2").CurrentRegion
Set tblRange = Intersect(tblRange, .Columns("B:D"), .Rows("3:5000"))
If tblRange Is Nothing Then Exit Sub
tTitle = Application.Transpose(tblRange.Rows(1).Offset(-1).Value)
End With
With Workbooks("ブックBの名称")
Set sh1 = .Worksheets(1)
For r = 1 To tblRange.Rows.Count Step 10
Set sh2 = .Worksheets.Add(Before:=sh1)
Set targetRange = sh2.Range("A2:B2")
i = 0
While i < 10 And r + i <= tblRange.Rows.Count
targetRange(1).Resize(3).Value = tTitle
targetRange(2).Resize(3).Value = _
Application.Transpose(tblRange.Rows(r + i).Value)
i = i + 1
targetRange.Offset(4, 9).PageBreak = xlPageBreakManual
Set targetRange = targetRange.Offset(5)
Wend
Next r
End With
End Sub
No.3
- 回答日時:
fujillinさん
勘違いされていると思うのでご説明を。。
>方法を回答をしてもほぼ無視の様ですし
こちらは誰かとお間違えではないでしょうか?すみませんが、記憶にないです。。。
>何度も連呼しているようなので、「教えて」ではなくて丸投げで「作れ」ということなのかなと・・
こちらURLを貼っていただいたものですが。
こちらは私ではないですね。。
こちらすでに解決済みとなっていましたが、
回答を探したところなかったので、気になり
同じ質問をここでさせて頂きました。
そしてコード送ってくださりありがとうございます。
送って頂いたURLの意図を読み取りましたが、以下の箇所以外認識はあっているかと。。
・ブックBというものの構成が不明なので、全て新しいシートに転記することにする。
・ 同じく、他のシート名称が不明なので、シート名は成り行きのまま。
動作確認してみます。
No.1
- 回答日時:
こちらの質問と内容が変化されたのでしょうか?
それとも類似しているだけで別のもの?
ようはAのデータをBに貼り付ける際以前は連続した列ではないですが、今回のはAの1行を行列入れ替えてBに貼り付けるように見えますので。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) マクロについて教えてください 2 2023/06/09 16:01
- Visual Basic(VBA) vbaについて 主に以下のような設定をしたいです。 Aブックの表の行数が20未満だったら Bブックの 1 2023/06/08 23:40
- Visual Basic(VBA) マクロについて教えてください。 1 2023/06/09 13:17
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) 【マクロ】同じフォルダ内にある複数ブックから1つのブック内の1シートにデータを集めたい 6 2022/09/28 18:16
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Excel(エクセル) 【関数】【マクロ】データの転記の方法について 2 2023/07/26 15:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【ExcelVBA】zip圧縮されたCSV...
-
VBA シートをコピーする際に Co...
-
ワイルドカード「*」を使うとう...
-
別ブックをダイアログボックス...
-
VBA コードを実行すると画面が...
-
エクセルVBAが途中で止まります
-
VBS Bookを閉じるコード
-
【VBA】全シートの計算式を全て...
-
エクセルのマクロを使ってメー...
-
VBA シート名が一致した場合の...
-
【ExcelVBA】インデックスが有...
-
ユーザーフォームの切り替えに...
-
VBA 別ブックからコピペしたい...
-
vbaでvbaProjectのパスワード解...
-
VBA 実行時エラー 2147024893
-
【前回の続き続きです、ご教示...
-
【困っています2】VBA 追加処...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
マクロで最終行を取得したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
エクセルVBAが途中で止まります
-
別ブックをダイアログボックス...
-
【ExcelVBA】インデックスが有...
-
ワイルドカード「*」を使うとう...
-
【ExcelVBA】VBA実行でダイアロ...
-
ExcelのVBAです。フォルダ内の...
-
フォルダ内の全てのファイルに...
-
VBA コードを実行すると画面が...
-
VBA 別ブックからコピペしたい...
-
VBAで別ブックのシートを指定し...
-
VBS Bookを閉じるコード
-
vbaでvbaProjectのパスワード解...
-
【VBA】全シートの計算式を全て...
-
VBA シート名が一致した場合の...
-
【ExcelVBA】zip圧縮されたCSV...
-
複数のエクセルブックをひとつ...
-
VBSでExcelのオープン確認
-
VBAで別のブックにシートをコピ...
-
【Excel VBA】書き込み先ブック...
おすすめ情報
類似ですね。。
上の回答お待ちしております。