• ベストアンサー

〔EXCEL VBA〕で「第1のシート」のデータを「第2のシート」に転

〔EXCEL VBA〕で「第1のシート」のデータを「第2のシート」に転記する方法 EXCEL2003でデータが480行/65列ある第1のシート(データベース的)があります。 第1のシートの列にデータが入力されている場合のみ、第2シートの指定されたセルに検索した列の 表題と検索したデータを結合して転記したいのですが良い方法が分りません。 その際、各行毎に検索し空白列は第2のシ-トに転記せず左詰めにして転記したいのですが・・・・ 初心者に合せたご教示をお願いします。 また、Excel VBAの短期マスター法が御座いましたら合せて教示願います。 以上、宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • akina_line
  • ベストアンサー率34% (1124/3287)
回答No.2

こんにちは。  あまり綺麗ではありませんが、作ってみました。  以下のSub Main()からEnd Subまでを新規モジュール挿入後、貼りつけて実行してください。  なお、第一シートが"元データ"、第二シートが"集計表"というシート名にしています。  データの行数、列数などが固定になっているので、Curentregionなどを使って可変に対応できるようにしたほうが良いでしょう。 Sub Main() Dim rwIndex, colIndex, colIndex2 For rwIndex = 1 To 5 '集計表の列番号を初期化する。 colIndex2 = 1 For colIndex = 1 To 11 With Worksheets("元データ").Cells(rwIndex, colIndex) '1行目か1列目、2列目の場合、コピーする。 If rwIndex = 1 Or colIndex = 1 Or colIndex = 2 Then Worksheets("集計表").Cells(rwIndex, colIndex2).Value = .Value '集計表の列番号を増加する。 colIndex2 = colIndex2 + 1 'その他はデータがある場合だけ、表題(1列目)を結合してコピーする ElseIf .Value > 0 Then Worksheets("集計表").Cells(rwIndex, colIndex2).Value = Worksheets("元データ").Cells(1, colIndex).Value & "V/" & .Value & "A" '集計表の列番号を増加する。 colIndex2 = colIndex2 + 1 End If End With Next colIndex Next rwIndex End Sub では。

iiji4547
質問者

お礼

早速のアドバイス有難う御座いました。 解り易くて助かりました。 夏休み等もあり御礼が遅れました事をお詫び致します。 引き続きVBAの勉強を進めたいと思います。 以上

その他の回答 (1)

  • akina_line
  • ベストアンサー率34% (1124/3287)
回答No.1

こんにちは。  扱うデータのイメージが分かりづらいので、サンプルのデータを例示して説明したほうが回答が付きやすいと思います。 では。

iiji4547
質問者

お礼

有難うございます。 ご教示のお陰で製品リスト(集計表)が完成しました。 修正部分で若干手こずりましたが、反面勉強になりました。 今後もVBAをマスター出来るように頑張りたいと思います。 また、御指導頂ければ幸いです。 取り急ぎ、御礼まで。

iiji4547
質問者

補足

説明不足で失礼しました。結論的には下記の通りです。 サンプルとしては、第1シートを第2シートの様に纏めたい。(列のズレは、ご容赦下さい)  第1シート    A    B   C   D   E   F    G    H    I   J   K     1 名称  製品名  5   6    7   8    9   12   15   24  48 2 aa   あ   10                 1       5   3 bb   い       3                   1  4 cc   う    8   2               2       8 5 dd   え    4    第2シ-ト    A    B    C    D     E  F    G    H   I   J    1 名称  製品名   ch1   ch2    ch3   ch4   ch5  ch6 2 aa   あ   5V/10A  12V/1A  24V/5A 3 bb   い   6V/3A   15V/1A 4 cc   う   5V/8A   6V/2A  12V/2A 24V/8A 5 dd   え   5V/4A

関連するQ&A