- ベストアンサー
EXCEL_VBA縦方向のデータを横方向に更新する方法
- この質問では、EXCELのVBA処理を使用して縦方向に入力されたデータを横方向に更新する方法について困っています。
- No.を基準としてデータを読み込み、同じNo.の値を列方向に貼り付ける処理がうまく動作しないという問題が発生しています。
- 指示された更新前の状態の例と更新後の状態の例を示しており、データ量が大量で手動では作業が行き詰まっているとのことです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ピボットテーブルがシンプルかもしれませんね A列挿入して =COUNTIF(B$2:B2,B2) 下フィル 範囲指定して、「データ」「ピボットテーブル」でウィザードに従って ピボットテーブル(右クリックして表示)のフィールドの設定で合計を選択
その他の回答 (2)
- hallo-2007
- ベストアンサー率41% (888/2115)
VLOOKUP関数ではダメですか? Noが数値だとして、A列に1列挿入して =COUNTIF(B2:B$2,B2)*1000+B2 下フィルしておきます。 同一Noごとに 1001 1002となると思います 別シートには 1 2 ・・・ 1 2 3 4 と準備しておいてB2に =VLOOKUP(B$1*1000+$A2,Sheet1!$A:$C,3,FALSE) 右フィル、下フィルでは エラー処理は、別途考えてください。
お礼
早速のご回答ありがとうございます。 エクセルの関数で出来るとは全く思いつきませんでした。 今実際やってみたところ、出来ました。 手動でコピー&ペースト繰り返しで対処していたので とても助かりました。 質問文が足らずマナー違反でご迷惑をおかけしました。
- higekuman
- ベストアンサー率19% (195/979)
どうやらVBAのことはまったく知らないようですね。 この質問は、「作ってください」という内容ですよね。 『当サイトは、質問と回答の形式で会員の方同士の助け合いによる情報交換の場として運営しておりますが、他の会員に回答を義務づけ、あるいは何かを依頼してやってもらうというような場ではございません。従いまして、課題やレポートを解いたり作成したりする上での疑問点や、外国語の翻訳、プログラム作成時の疑問点などに関する質問について、課題文や条件のみを丸写しにした上で「この問題の回答を教えてください/翻訳してください」「これを作ってください」など回答者に丸投げで依頼するような質問は、削除・編集の対象とさせていただきます。 こういった質問については、ご自身である程度課題を解こうとしていただいた上で、疑問点や問題点、お困りの点を明確にして投稿いただきますようお願いいたします。』 ということなので、この質問は削除対象になります。 > システムの方に質問したらEXCELのVBAで容易に出来るということです。 その「システムの方」に聞くのが一番かと。
補足
すみません 言葉が足りませんでした
お礼
ピボットテーブルで縦方向のみで悩んでいました A列に式を挿入してピボットの操作をするとこれもできます。 もう一工夫が必要ということだったんですね。 マナー違反の投稿にもかかわらず 続けてのご教授、まことにありがとうございました 助かりました。