[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『別表から行ごとにデータを抽出し、1行につき1つのラベル表に貼り付ける』(げいたん)
毎日、仕入れた商品の一覧表をEXCELデータで取ってきています。
1行につき、1つの商品となっています。
それぞれの商品名や商品コードなど全部で5つの項目(列A〜列E)を、
別ファイルのラベル形式の表に抽出したいと思っています。
これを、データがなくなるまで繰り返す構文。
さらに、転記先の位置を指定する構文を追加したいのですが、可能でしょうか?
ラベル.xlsmのファイルには1シートに6つのラベルを印刷したいと思っています。
1 4
2 5
3 6
といった並びで、1つの数字のエリアに列A-Eで抽出したデータが
すべて入る形です。
いま、下記のような構文を書いてみました。
元データファイル名 = 棚ラベルデータ.xlsm
転送先ファイル名 = ラベル.xlsm
Sub ラベル転記()
'
' ラベル転記 Macro
'
'
Windows("ラベル.xlsx").Activate Range("A2:E2").Select ActiveCell.FormulaR1C1 = "=IF(棚ラベルデータ.xlsm!R3C1="""","""",棚ラベルデータ.xlsm!R3C1)" Range("A3:E3").Select ActiveCell.FormulaR1C1 = "=IF(棚ラベルデータ.xlsm!R3C4="""","""",棚ラベルデータ.xlsm!R3C4)" Range("A4:E4").Select ActiveCell.FormulaR1C1 = "=IF(棚ラベルデータ.xlsm!R3C5="""","""",棚ラベルデータ.xlsm!R3C5)" Range("A5:C6").Select ActiveCell.FormulaR1C1 = "=IF(棚ラベルデータ.xlsm!R3C2="""","""",棚ラベルデータ.xlsm!R3C2)" Range("E5").Select ActiveCell.FormulaR1C1 = "=IF(棚ラベルデータ.xlsm!R3C9="""","""",棚ラベルデータ.xlsm!R3C9)" Range("E6").Select ActiveCell.FormulaR1C1 = "=IF(棚ラベルデータ.xlsm!R3C8="""","""",棚ラベルデータ.xlsm!R3C8)" Range("A8:E8").Select ActiveWindow.WindowState = xlMaximized Range("A2:E2").Select Windows("棚ラベルデータ.xlsm").Activate End Sub
どうか、ご教示ください。
Windows7 で Excel2007を使用しています。よろしくお願いいたします。
すべてマクロ化せずに、VLOOKUP関数と組み合わせで、棚ラベルデータの最下行と繰り返し数を変数とする for i = 2 to LastRow がよく利用されています。
以下のサンプルシートが参考になると思います。
http://www11.plala.or.jp/koma_Excel/contents4/mame4034/mame403401.html
すべてマクロを希望でしたらすみません。
(minoru)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.