No.4ベストアンサー
- 回答日時:
簡単ですよ。
抽出元データシート:"A"
抽出先データシート:"B"
"A"に貼り付ける行を格納する変数:lSrcRow
"B"に貼り付ける行を格納する変数:lDstRow
"A"→"B"に貼り付ける列を格納する変数:lCol
※変数名の1文字目"l"はLong型の変数ですよという意味です。
1.初期設定
・lSrcRow = 2
・lDstRow = 2
2.顧客番号抽出処理
2-1.lSrcRow行のA列にデータ入力がない場合→END
2-2.lSrcRow行の顧客番号チェック。
OK?→4.へ。
NG?→2-3へ。
2-3.lSrcRow = lSrcRow + 1
2-4.2-1に戻る
3.END
処理終了
4.顧客別データ転記処理
・lCol = 1(A列)
4-1.lCol = 1(A列)~ 8(H列)までループ。下記処理を実施。
"B".Cells(lDstRow, lCol) = "A".Cells(lsrcRow, lCol)
4-2.lDstRow = lDstRow + 1
4-3.2-3に戻る。
※4.データ転記処理を別関数にする必要はないと思います。
基本的な処理はこんな感じで、あとはこれに色々アレンジすればできると思いますが。
それにしてもこの表だと、顧客No.と顧客名の入力ミスが懸念されますね。その辺が多少気になりますが。
ありがとうございます。
教えていただいた方法でやってみようと頑張ったのですが、私の知識不足のため、よく理解することができませんでした。
いろいろ調べながらもうちょっと頑張ってみたいと思います。
ちなみに顧客NO.を入力すると顧客名が出てくるようにVLOOLUPを使っています。
一応両方表示されると便利だったので。
No.3
- 回答日時:
先ずは、マクロの記録でサンプル作成してみてください。
マクロの記録の開始
1、オートフィルター、抽出したい顧客Noで絞込み
2、1行目からたっぷりと行を選択、コピィ
3、ほかのシートを選択、貼り付け
4、データのシートへ戻って、オートフィルター解除
マクロの記録の終了
少し手直しすればよいと思います。
一例ですが、オートフィルター実行部分を
Selection.AutoFilter Field:=2, Criteria1:=InputBox("ID")
とかINPUTBOXにしてしまえば如何でしょうか。
回答ありがとうございます。
INPUTBOXの代わりに、指定したセル内に入力したIDで抽出したいのですが、なかなかうまくいきません。
もうちょっと頑張ってみたいと思います。
No.2
- 回答日時:
>これを元に顧客NO.を指定すると、該当する行のみを抜き出して、別のシートに転記されるというようにしたいのです。
>どのような命令文を作ればよいのでしょうか?
どのように条件を与えるのでしょう。
あとコピぺ自体はA~H列の範囲で選択するか、A~I列で貼付けた後I列を削除すれば
手作業でもできますが・・・?
それとも顧客別シートへの振り分けを考えているのでしょうか?
だとすると、
>顧客NO.を指定すると
がかみ合わないから違うかな。
この回答への補足
>どのように条件を与えるのでしょう。
指定したセルに顧客NO.を入力すると、別シートにその顧客のみの行を抜き出して転記するようにしたいのです。
全体の売上帳と、顧客ごとの売上帳を作りたかったのですが、毎年稼働する顧客数が何十件にもなるため、必要な時に必要な顧客の売上のみ表示させるようにしたいのです。
手作業でも出来ますが、抜き出しミスなどがあれば困るので、できれば自動で抽出される方法をとりたいのです。
No.1
- 回答日時:
VBAにこだわっていますか?
これくらいなら、オートフィルタで十分に対応できると思いますが
(コピー処理は手動ですが。。。)。
1.オートフィルタで「顧客NO.」を絞り込み
2.結果をコピー
3.別シートに貼り付け
これで簡単に出来ると思います。
VBAだと、余計手間隙かかりますよ。
この回答への補足
すみません!ひとつ書き忘れました。
I列に差額(売上-入金)が入っているのです。
転記する部分はH列までで、顧客別のシートでは、顧客ごとの差額を
計算させたかったので。
オートフィルタだと差額部分もそのまま抜き出してしまうので、VBAにこだわっていたのです。
説明不足ですみませんでした。
宜しくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excel VBAの書き方 1 2022/03/28 12:09
- Excel(エクセル) エクセル 多数のファイルから値を抜き出したい 4 2022/12/12 16:49
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
- Excel(エクセル) 単価シートから単価をエクセル関数で自動取得する方法 1 2023/07/02 22:00
- Excel(エクセル) エクセルでSUMIFS関数で条件範囲の部分が#valueになる。 4 2023/04/28 12:42
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) 【エクセル」 特定のセルで条件抽出した列を、別シートに上から詰めて表示したい。 8 2022/04/08 16:00
- その他(開発・運用・管理) マイクロソフト製品のライセンス販売で困ってます 1 2022/06/30 19:52
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのセルの色を変えた行(す...
-
ExcelのVlookup関数の制限について
-
文字の色も参照 VLOOKUP
-
Excel の複数シートの列幅を同...
-
エクセルの保護で、列の表示や...
-
エクセルVBAで、ある文字を含ん...
-
VBAで繰り返しコピーしながら下...
-
SUMPRODUCTにて別シートのデー...
-
Excelでの並べ替えを全シートま...
-
Excel VBA ピボットテーブルに...
-
エクセルで、book全体の検索&...
-
エクセルで、チェックボックス...
-
エクセルのブック分割マクロを...
-
VLOOKアップ関数の結果の...
-
データチェックを行うエクセル...
-
【条件付き書式】countifsで複...
-
Excel複数シートにあるデータを...
-
エクセルで横並びの複数データ...
-
エクセルのマクロで複数条件に...
-
エクセル・LOOKUPで、不...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
文字の色も参照 VLOOKUP
-
ExcelのVlookup関数の制限について
-
エクセルの保護で、列の表示や...
-
VBAで繰り返しコピーしながら下...
-
Excel の複数シートの列幅を同...
-
Excel複数シートにあるデータを...
-
エクセルの列の限界は255列以上...
-
【条件付き書式】countifsで複...
-
エクセル マクロ 標準モジュー...
-
Excelでの並べ替えを全シートま...
-
SUMPRODUCTにて別シートのデー...
-
エクセルで、チェックボックス...
-
スプレッドシートでindexとIMPO...
-
VLOOKアップ関数の結果の...
-
Excel VBA ピボットテーブルに...
-
エクセルで横並びの複数データ...
-
Excelに自動で行の増減をしたい...
-
【VBA】ピボットテーブルを既存...
-
【VBA】複数のシートの指定した...
-
オートフィルタ使用時にCOUNTIF...
おすすめ情報