【補足欄が足りなかったため、こちらで再質問させていただきます。】
Excelの転記マクロについて、教えてください。
AAAAというExcelのデータがあり
A列に、支店名コード(4桁)があり、支店ごとの情報がX列まで
入っています。
①AAAA.excel (データはA列からX列まで)
支店名 売上 最終値引き ・・・・・
0001 50000 4500
0002 60000 12000
・
・
このデータを支店名でフィルターをかけて、支店別のExcelに見出しなし、かつ
支店名を除いたデータを転記したいと考えています。
例えばですが・・[0001支店.excel] にデータを貼り付けたいのですが
支店別のExcelには、A-C列に別の情報が入っていて、
D列から、 売上 最終値引き・・・ の見出しがあるので
D列(2行目)から、フィルターをかけた可視セルの情報を値貼付けしたいです。
(A列の支店名は不要)
どうしても支店名がコピーされてしまうので、困っています。
どなたか教えていただけると助かります!
マクロは、下記の通りです。
Sub TEST()
Dim Wb1 As Workbook
Dim Wb2 As Workbook
'現在開いているファイルを変数格納
Set Wb1 = ActiveWorkbook
'別ファイルを開く
Workbooks.Open "D:\Users\△△\0001支店.xlsx"
Set Wb2 = ActiveWorkbook
'フィルターでデータ抽出
Wb1.Sheets("S1").Range("A1").CurrentRegion.AutoFilter _
Field:=1, _
Criteria1:="0001"
If WorksheetFunction.Subtotal(3, Range("A:A")) > 1 Then
'フィルター抽出結果を別ファイルへ転記
With Wb1.Sheets("S1").Range("B1:X1").CurrentRegion
.Resize(.Rows.Count - 1).Offset(1, 0).Copy
Wb2.Sheets("TEST").Range("D7").PasteSpecial Paste:=xlPasteValues
End With
End If
'オートフィルタを解除
Range("A1").AutoFilter
End Sub
No.2ベストアンサー
- 回答日時:
No1です。
ごめんなさい。
見落としていました。 No1の一部に誤りがありました。
>.Resize(.Rows.Count - 1).Offset(1, 0).Copy
行数は「.Rows.Count」となっているので、行数オーバーということはないですね。
( Rows.Count と勘違いしてしまいました。)
大変失礼をいたしました。
CurrentRegionでA列迄を含んでいるので、列方向も同じことを行えば、1列分範囲を締められます。
少し発想を変えてもよければ、
With Wb1.Sheets("S1").Range("B1:X1").CurrentRegion
Intersect(.Cells, .Offset(1, 1)).Copy
・・・・・
とすることでB2セル以降をコピーできると思います。
失礼いたしました。
再度のご回答ありがとうございます。また、手順を整理しきれない状態での質問、大変失礼いたしました。
教えていただいた内容で、動かしてみたところ支店コードがない状態でコピーできました。この転記作業のマクロを考えるのに何時間も費やしていたので、とても嬉しいです。ありがとうございました。
No.4
- 回答日時:
No3です。
提示したマクロに誤りがありました。無視してください。
失礼しました。
No2の方のマクロが参考になるかと。
No.3
- 回答日時:
以下のようにしてください。
Sub TEST()
Dim Wb1 As Workbook
Dim Wb2 As Workbook
'現在開いているファイルを変数格納
Set Wb1 = ActiveWorkbook
'別ファイルを開く
Workbooks.Open "D:\Users\△△\0001支店.xlsx"
Set Wb2 = ActiveWorkbook
'フィルターでデータ抽出
Wb1.Sheets("S1").Range("A1").CurrentRegion.AutoFilter _
Field:=1, _
Criteria1:="0001"
If WorksheetFunction.Subtotal(3, Wb1.Sheets("S1").Range("A:A")) > 1 Then
'フィルター抽出結果を別ファイルへ転記
Wb1.Sheets("S1").Range("B2:X2").Resize(Wb1.Sheets("S1").Rows.Count - 1).Copy
Wb2.Sheets("TEST").Range("D7").PasteSpecial Paste:=xlPasteValues
With Wb1.Sheets("S1").Range("A1").CurrentRegion
.Resize(.Rows.Count - 1).Offset(1, 1).Copy
Wb2.Sheets("TEST").Range("D7").PasteSpecial Paste:=xlPasteValues
End With
End If
'オートフィルタを解除
Wb1.Sheets("S1").Range("A1").AutoFilter
End Sub
No.1
- 回答日時:
こんにちは
>どうしても支店名がコピーされてしまうので、困っています。
前回も書きましたけれど・・
支店名の列をはずしてコピーすればよいだけ
でしょう。
>With Wb1.Sheets("S1").Range("B1:X1").CurrentRegion
>.Resize(.Rows.Count - 1).Offset(1, 0).Copy
Range("B1:X1") でB列からを指定したつもりでも、CurrentRegionを取ればA列を含んだ範囲になると推測されます。
(A列が全て空白なら拡張されませんけれど、そうではないでしょうから)
>.Resize(.Rows.Count - 1)
さらにそれを最終行まで拡張しているので、前のCurrentRegionすら何をしたいのか不明になってきます。
前回も書きましたように、「なさりたいこと」を実現する手順をきちんと整理すれば、質問などせずとも解決できるはず。
2行目から最終行までまとめてコピーしたいのなら、
Wb1.Sheets("S1").Range("B2:X2").Resize(.Rows.Count - 1).Copy
だけですむはずです。
(With構文も不要になるでしょう)
ただし、
>Wb2.Sheets("TEST").Range("D7").PasteSpecial Paste:=xlPasteValues
7行目以降にペーストしようとしているけれど、コピー内容を考ええば行数が足りないはず。
手操作で同様のことをやってもエラーになると思いますけれど??
※ やりたいことを整理して、それをきちんとコードになるように記述しましょう。
※ 自分が書いたコードがどのような処理をしているのか、じっくりと考えてみましょう。
頭の中で「できるはず」ではなく、実際に手操作でやってみれば、すぐにわかると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelの転記マクロについて、教えて下さい excelのマクロでまた悩んでいます! AAAAという 3 2023/09/26 21:58
- Excel(エクセル) 3つのマクロを連続実行の中で、1つ目のマクロ要件を満たさなかったら、マクロ2・3を実行しない為には 1 2023/10/15 13:42
- Excel(エクセル) マクロを修正できないものか、統合シートについて 3 2021/12/07 09:26
- Visual Basic(VBA) クリップボードに貼付している文字列が、マクロで別ブックへ転記すると、消えてしまう 1 2023/10/15 13:36
- Visual Basic(VBA) 転記先VBA 一致しているセルがコピーされない 5 2021/11/15 17:23
- Visual Basic(VBA) Sheet1をフィルターで「りんご」を抽出し、Sheet2へ地域を貼り付ける下記マクロを変更して S 2 2022/12/11 03:01
- Visual Basic(VBA) EXCEL VBAの質問です '選択したファイルを取り込み、別のファイルに貼り付ける。 マクロを組ん 1 2021/11/11 09:49
- Visual Basic(VBA) Excel VBAでフォルダ内の全テキストファイルの任意データを取得について 7 2021/12/18 16:00
- Visual Basic(VBA) 超難 日付に対するクロス集計 7 2021/12/06 20:56
- Excel(エクセル) 空白行も含めてソートしたい 3 2022/02/01 23:13
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
Excelマクロで空白セルの大小比較処理について
Visual Basic(VBA)
-
csvファイルを列数ごとに分割するExcelマクロが書けずに困っています
Visual Basic(VBA)
-
一つのフォルダーに50個のエクセルファイルがあります。 各ファイルにはAとBのシートがあります。 5
Visual Basic(VBA)
-
-
4
【VBA】飛び飛びの3セルに完了"かもしくは"支援なし"の文字が入っていたら、計算を実行したい"
Visual Basic(VBA)
-
5
select case について
Visual Basic(VBA)
-
6
こんにちは。Excelのデータ入力規則のことで教えてください。複数条件を指定したい場合の構文ですが、
Excel(エクセル)
-
7
自動VBAマクロって会社の中で禁止なんですか?
Visual Basic(VBA)
-
8
エクセル VBAでの転記の方法について
Visual Basic(VBA)
-
9
VBA とびとびの列を結合させる
Visual Basic(VBA)
-
10
2013Excel保存済みファイルグレーアウト Excelを開こうとするとメニュー以外全てグレーにな
Excel(エクセル)
-
11
Excel初心者です、教えてください。
Excel(エクセル)
-
12
Excelの転記マクロについて、教えて下さい excelのマクロでまた悩んでいます! AAAAという
Excel(エクセル)
-
13
VisualStudio2022をマクロみたいに自動プログラムを作成する方法を教えてください。
Visual Basic(VBA)
-
14
マクロVBAについてご教授いただけましたらと存じます。
Visual Basic(VBA)
-
15
Excel VBAにて、2GB超の点群データ(CSVファイル,改行コードLF)を高速で解析したい。
Visual Basic(VBA)
-
16
下記のような条件付き書式はどうやって設定したら良いのか教えていただきたいです。 180時間を満たない
Excel(エクセル)
-
17
Windows 11 Pro での、VBAのCode書き換えで、1点お教え願います。
Visual Basic(VBA)
-
18
VBA 何かしら文字が入っていたら
Visual Basic(VBA)
-
19
エクセル 条件付き書式設定
Excel(エクセル)
-
20
環境依存文字?をEnumで定義したい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Worksheets メソッドは失敗しま...
-
B列の最終行までA列をオート...
-
Excelで、あるセルの値に応じて...
-
Cellsのかっこの中はどっちが行...
-
vba 2つの条件が一致したら...
-
【VBA】2つのシートの値を比較...
-
VBAのFind関数で結合セルを検索...
-
VBA 何かしら文字が入っていたら
-
最終列の右へSUM関数を作成する...
-
マクロ 最終列をコピーして最終...
-
IIF関数の使い方
-
VBAを使って検索したセルをコピ...
-
文字列の結合を空白行まで実行
-
DataGridViewに空白がある場合...
-
VBAでのリスト不一致抽出について
-
VBAで文字列を結合
-
VBAコンボボックスで選択した値...
-
rowsとcolsの意味
-
VBAの構文 3列置きにコピーし...
-
【Excel VBA】 B列に特定の文字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Worksheets メソッドは失敗しま...
-
Excelで、あるセルの値に応じて...
-
B列の最終行までA列をオート...
-
vba 2つの条件が一致したら...
-
Cellsのかっこの中はどっちが行...
-
VBAを使って検索したセルをコピ...
-
文字列の結合を空白行まで実行
-
VBAのFind関数で結合セルを検索...
-
IIF関数の使い方
-
【VBA】2つのシートの値を比較...
-
マクロ 最終列をコピーして最終...
-
VBA 何かしら文字が入っていたら
-
Changeイベントでの複数セルの...
-
URLのリンク切れをマクロを使っ...
-
エクセルVBAにて =A1=B1とすれ...
-
VBAでのリスト不一致抽出について
-
データグリッドビューの一番最...
-
マクロについて。S列の途中から...
-
VBA UserFormからの転記で
-
targetをA列のセルに限定するに...
おすすめ情報