- ベストアンサー
VBA初心者のための変数宣言と条件付き選択のコード
- VBA初心者のための変数宣言と条件付き選択のコードについての要約です。
- この記事では、VBAの基礎知識を持っていない初心者向けに、変数の宣言方法と条件付き選択のコードを紹介します。
- 具体的には、変数を宣言し、アクティブなシートに対してfor nextループを使用し、指定した範囲のデータを条件に基づいて選択するコードを紹介します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
No1です。 ループで書くなら、 Sub test() Dim i As Long Dim j As Long Application.DisplayAlerts = False With ActiveSheet For j = 5 To 20 If .Cells(2, j) Like "*No.8*" Then 'ここからがわかりません .Cells(3, j).Resize(3).Merge '3~5行目 ' .Cells(3, j).Resize(5).Merge '下2列というのは変。下2行なら3~7行目? ' .Cells(3, j).Resize(3, 2).Merge '右2列ならこれ? End If Next j End With Application.DisplayAlerts = True End Sub こんな感じ? 下2列というのは下2行? としてもなんか変ですけど。 右2列、っていう事は無いですよね?
その他の回答 (1)
- ushi2015
- ベストアンサー率51% (241/468)
こんにちは 例えと、その前の説明が全然合っていないのでは? 2行目を調べているはずなのに、A1セルにNo.8? その当てはまる列の3~5行を選択し(1)なのに、E1セルとF1セル? 更に、(1)の下2列を選択する(2)なのに、E3セルとF3セル? また、単純にE1~F1、E3~F3 を別個には結合出来ますけど、一緒には結合出来ません。 書けているというコードも、For i = 3 To 5 のループは不要だと思います。 For j = 5 To 20のループも「No.8」が1セルしかないなら Findを使った方がいいかも?
お礼
説明下手ですみませんm(__)m 下2行の間違いでしたm(__)m 回答者様のコードを少し変えてみたところ上手く実行出来ました! 足りなかったのはresizeでした! とにかく回答者様のおかげで出来ました! ありがとうございます!