こんにちは。
マクロ初心者で、VBAがわからず困っております。
マクロで実行したいものが、
①"sheet1"のA1:G10までの表で、A列が空欄の行全体を削除
②削除した表を並べ替え
③並べ変えたものを"Sheet2"のH1へコピー
④"sheet2"のA1:G10までの表で、A列が空欄の行全体を削除
⑤削除した表を並べ替え
⑥並べ変えたものを"Sheet3"のH1へコピー
⑦以降これを”Sheet11"まで繰り返し
このようなマクロを組みたいときにはどのようなマクロを指定すればいいのか、
教えてください。
こんな簡単な内容で躓いており情けないのですが、
よろしくお願いいたします。
No.2
- 回答日時:
>④"sheet2"のA1:G10までの表で、A列が空欄の行全体を削除
で③で貼り付けた表が一部削除されてしまって良いのでしょうか?
違うならこんな感じかなあ
Sub Sample2()
Dim SNo As Long
Dim DLA As Long
Dim n As Long
For SNo = 1 To 10
With Worksheets("Sheet" & SNo)
n = 10
For DLA = 10 To 1 Step -1
If .Range("A" & DLA) = "" Then
.Range("A" & DLA & ":G" & DLA).Delete Shift:=xlUp ’①
n = n - 1
End If
Next DLA
If n <> 0 Then
.Range("A1:G" & n).Sort Key1:=.Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin, DataOption1:=xlSortNormal ’②
Worksheets("Sheet" & SNo + 1).Range("H1:N" & n) = .Range("A1:G" & n).Value ’③
End If
End With
Next SNo
End Sub
No.1ベストアンサー
- 回答日時:
この手のものは、各操作をマクロで記録して、内容を解析しながらカスタマイズして組み上げていくと勉強になりますよ。
すると、こんな感じになります。
Sub sample()
Dim SheetNo As Long
For SheetNo = 1 To 10
Worksheets("Sheet" & SheetNo).Select
'①"sheet1"のA1:G10までの表で、A列が空欄の行全体を削除
Range("A1:A10").SpecialCells(xlCellTypeBlanks).Select
Selection.EntireRow.Delete
'②削除した表を並べ替え
With ActiveSheet
.Sort.SortFields.Clear
.Sort.SortFields.Add Key:=Range("A1"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With .Sort
.SetRange Range("A1:G10")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End With
'③並べ変えたものを"Sheet2"のH1へコピー
Range("A1:G10").Copy Destination:=Worksheets("Sheet" & SheetNo + 1).Range("H1")
Next SheetNo
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 1 2023/02/27 22:21
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Excel(エクセル) Excel条件が一致したセルの処理ついて 3 2023/06/13 10:33
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/10 11:34
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/24 08:33
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/25 16:07
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで特定の列が0表示の場...
-
特定のPCだけ動作しないVBAマク...
-
Excel マクロ VBA プロシー...
-
Excel・Word リサーチ機能を無...
-
EXCELのVBAでRange("A1:C4")を...
-
メッセージボックスのOKボタ...
-
一つのTeratermのマクロで複数...
-
Excel VBAからAccessマクロを実...
-
非表示の列をすべて削除するマクロ
-
ExcelVBAでPDFを閉じるソース
-
エクセルのマクロをセルの値に...
-
ピボットテーブルでの毎回可変...
-
ExcelのVBA。public変数の値が...
-
wordを起動した際に特定のペー...
-
TERA TERMを隠す方法
-
エクセルマクロ自動更新
-
エクセルに張り付けた写真のフ...
-
有効数字N桁のマクロについて
-
特定文字のある行の前に空白行...
-
マクロ実行時、ユーザーフォー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
メッセージボックスのOKボタ...
-
一つのTeratermのマクロで複数...
-
エクセルで別のセルにあるふり...
-
ExcelのVBA。public変数の値が...
-
エクセルに張り付けた写真のフ...
-
ExcelVBAでPDFを閉じるソース
-
EXCELのVBAでRange("A1:C4")を...
-
Excel VBAからAccessマクロを実...
-
TERA TERMを隠す方法
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
マクロ実行時、ユーザーフォー...
-
Excelのマクロについて教えてく...
-
ソース内の行末に\\
おすすめ情報