![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?c9bd177)
No.6ベストアンサー
- 回答日時:
見にくいので修正。
Sub Sample()
Dim Sh1 As Worksheet
Dim Sh2 As Worksheet
Dim i As Long, j As Long, X As Long
Application.ScreenUpdating = False
Set Sh1 = Worksheets("Sheet1")
Set Sh2 = Worksheets("Sheet2")
i = 1
Do While Sh1.Cells(i, 1) <> "" 'Sheet1の行移動ループ
j = 3
Do 'Sheet1の列移動ループ
X = X + 1 'Sheet2の次の行へ
Sh2.Cells(X, 1) = Sh1.Cells(i, 1)
Sh2.Cells(X, 2) = Sh1.Cells(i, 2)
Sh2.Cells(X, 3) = Sh1.Cells(i, j)
j = j + 1
Loop While Sh1.Cells(i, j) <> ""
i = i + 1 'Sheet1の次の行へ
Loop
Application.ScreenUpdating = True
MsgBox ("完了")
End Sub
No.5
- 回答日時:
No.4 です。
スピードアップは考慮せず、かなり基本的なコードです。
Sub Sample()
Dim i As Long, j As Long, X As Long
Application.ScreenUpdating = False
i = 1
Do While Worksheets("Sheet1").Cells(i, 1) <> "" 'Sheet1の行移動ループ
j = 3
Do 'Sheet1の列移動ループ
X = X + 1 'Sheet2の次の行へ
Worksheets("Sheet2").Cells(X, 1) = Worksheets("Sheet1").Cells(i, 1)
Worksheets("Sheet2").Cells(X, 2) = Worksheets("Sheet1").Cells(i, 2)
Worksheets("Sheet2").Cells(X, 3) = Worksheets("Sheet1").Cells(i, j)
j = j + 1
Loop While Worksheets("Sheet1").Cells(i, j) <> ""
i = i + 1 'Sheet1の次の行へ
Loop
Application.ScreenUpdating = True
MsgBox ("完了")
End Sub
No.4
- 回答日時:
多分、元ネタはこれ。
https://oshiete.goo.ne.jp/qa/5605894.html
Range("XX") の記述をしているので難しいことになってますが、
Cells (i,j) にするか、 Range型の オブジェクト変数を使えば
アルファベット部分の桁数なんか気にしなくてすむでしょうに。
No.3
- 回答日時:
こんにちは
>範囲を広げる方法を教えていただけませんでしょうか。
VBAのエディタで、当該VBAを表示します。
列を制限している部分を、必要な列までに修正ます。
以上で、できると思いますが…?
どこを修正するのかって?
そのもう少し下の、そこのところでしょう。
No.2
- 回答日時:
2003以前でもZ列までしかないということはないかと思いますが。
>現状の回答のvba
とりあえずこちらのコードを提示してみては?
後、もう少しやっている内容の説明をした方がいいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- Visual Basic(VBA) 【VBA】もし、値が0だったら左のセルと合わせて削除したい 3 2023/04/20 10:12
- Visual Basic(VBA) VBA横データを縦にしたいです 2 2023/08/08 19:38
- Excel(エクセル) エクセルでのマクロを使ったデータの並べ替え 3 2022/12/03 18:54
- Excel(エクセル) VBA セルの値と同じ名前のシートにデータを貼り付けするやり方を教えてください 2 2022/05/17 16:26
- Excel(エクセル) Googleスプレッドシートの割合の関数と円グラフの並べ替えについて 1 2022/07/22 17:31
- Excel(エクセル) エクセルVBAで複数のシート印刷設定 1 2022/09/07 12:03
- Visual Basic(VBA) VBAで大量データの処理 3 2022/11/15 21:53
- Excel(エクセル) 単価シートから単価をエクセル関数で自動取得する方法 1 2023/07/02 22:00
- Excel(エクセル) エクセルのvlookupについて質問です 3 2023/01/05 15:15
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセス 取り込み時に、桁数(...
-
エクセル 1つのシートを日付で...
-
Excel/VBA ステップインと通常...
-
エクセルマクロの組み方
-
エクセルでセル12個間隔で合...
-
【エクセルVBA】任意の画像フォ...
-
エクセルの列をたたむ操作
-
Excelの行数、列数を増やしたい...
-
列方向、行方向の定義
-
VLOOKUPの列番号の最大は?
-
LEFT関数とIF関数の組み合わせ...
-
あああ..ああい..ああう とい...
-
Excelのマクロについて教えてく...
-
エクセル マクロ オートフィ...
-
Excelのマクロについて教えてく...
-
エクセルで複数のシートのクリ...
-
VBAマクロ実行時エラーの修正に...
-
Excelのマクロについて教えてく...
-
DataGridViewでグリッド内に線...
-
Excel UserForm の表示位置
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで離れた列を選択して...
-
VLOOKUPの列番号の最大は?
-
「段」と「行」の違いがよくわ...
-
LEFT関数とIF関数の組み合わせ...
-
VBA 指定した列にある日時デー...
-
CSVファイルの「0落ち」にVBA
-
エクセルで住所を県と市・郡と...
-
Excelの行数、列数を増やしたい...
-
エクセルで複数列の検索をマク...
-
エクセルマクロの組み方
-
Alt+Shift+↑を一括で行うには、...
-
えABのある列って
-
エクセルのソートで、数字より...
-
エクセル マクロ 範囲指定で...
-
VBAで結合セルを転記する法を教...
-
VBAで別ブックの列を検索し、該...
-
エクセルマクロPrivate Subを複...
-
列方向、行方向の定義
-
リストからデータを紐付けしたい
-
Accessのレポートで繰り返し表...
おすすめ情報
回答ありがとうございます。当方、たまたま検索していた中で使えそうなものはないかと探していましたがvbaの知識はなく具体的に何処を直せばよいかわかりません。このマクロでは列の範囲がz
列以上は確認できませんでしたので、簡単に直せないかな思いましたので投稿しました。
コードを入力していますがエラーメッセージが出ています。
doに対するloopがありません。
よろしくお願いします。