- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCEL2003 行のタイトルを、データのあるところだけ抜き出し列(縦並び)にしたい)
EXCEL2003 行のタイトルを、データのあるところだけ抜き出し列(縦並び)にしたい
このQ&Aのポイント
- エクセルで作られた注文データを、アクセスで読み込むために変換をするのですが、指定されたデータの並びがエクセルで作ったものと違うため、先に並び替えが必要になります。
- 変更前のエクセルのデータでは品物は50種ぐらい、注文は50件ぐらいです。手作業でも何とかなるのですが、毎日受け取るデータなので作業時間を短くしたいと思っています。
- お知恵を拝借できればとても助かります。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
マクロで行えます。 例の配置の場合の例を以下に示しますので、参考にしてみてください Sub Macro rr = 2 '出力シートの行 r = 2 '入力シートの行 Do While Cells(r, "A") <> "" '行のデータが無くなるまで繰り返す c = 2 'データの開始列 Do While Cells(1, c) <> "" '列のデータが無くなるまで繰り返す If Cells(r, c) > 0 Then Sheets("sheet3").Cells(rr, 1) = Cells(r, 1) ’番号 Sheets("sheet3").Cells(rr, 2) = Cells(1, c) '品名 Sheets("sheet3").Cells(rr, 3) = Cells(r, c) '数量 rr = rr + 1 End If c = c + 1 Loop r = r + 1 Loop End Sub
お礼
こんなに早く、しかもわかりやすい回答をいただけると思っていなかったので、とても嬉しいです。 教えていただいたマクロも登録をして、動作確認が出来ました。 まさしく求めていたもので感激です。 これで作業がとても楽になります。 本当にどうもありがとうございました!