
条件
B列に2~500まで、「ああ-○○」、「かか-▽▽」、…といったように、頭に2文字の目印を付けて、後半には長い文章が書かれて、1つのセルの中で文字列が何種類か並んでいます。
頭の2文字の目印を境目に2行追加したいのですが、どのようなマクロを書けばよいでしょうか?
ネットで見る限り、セル1つずつ検索して、上のセルと異なる場合は行を挿入、が適切に思いますが、頭の2文字の検索?をどうすればよいか思いつきません。
ちなみに、頭の2文字は、
ああ
かか
ささ
たた
なな
と決まっています。。
http://www.asahi-net.or.jp/~zn3y-ngi/YNxv9482.html
こちらの、
10 Dim 行 As Long
20 Const 列 = 7 '所属Ⅲの列
30 For 行 = Cells(Rows.Count, 列).End(xlUp).Row To 3 Step -1
40 If Cells(行, 列) <> Cells(行 - 1, 列) Then
50 Rows(行).Insert
60 End If
70 Next 行
を流用すると、
10 Dim 行 As Long
20 Const 列 = 2
30 For 行 = Cells(Rows.Count, 列).End(xlUp).Row To 3 Step -1
40 If Cells(行, 列) <> Cells(行 - 1, 列) Then
50 Rows(行).Insert
60 End If
70 Next 行
でもよいかと思ったのですが、頭の2文字の判定ができないので、使えない状況です。
セルの中の頭の2文字だけを判定するマクロは作れるでしょうか?
上のものに追加してもらえると助かります。
また、これよりいいものがあれば、教えてください。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは!
すでに回答は出ていますので、参考程度で・・・
Sub Sample1()
Dim i As Long
For i = Cells(Rows.Count, "B").End(xlUp).Row To 3 Step -1
If Left(Cells(i, "B"), 2) <> Left(Cells(i - 1, "B"), 2) Then
Rows(i & ":" & i + 1).Insert
End If
Next i
End Sub
こんな感じではどうでしょうか?m(_ _)m
No.1
- 回答日時:
If Cells(行, 列) <> Cells(行 - 1, 列) Then
を
If Left(Cells(行, 列),2) <> Left(Cells(行 - 1, 列)) Then
にしてみてダメだったでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
特定の条件の時に行を挿入したい
Excel(エクセル)
-
Excelで、あるセルの値に応じて行を自動挿入したい
Visual Basic(VBA)
-
■VBAで条件による行挿入方法
Visual Basic(VBA)
-
4
VBAで条件が一致する行をコピーしその1つ下へ挿入
Excel(エクセル)
-
5
特定文字のある行の前に空白行を挿入したい
その他(Microsoft Office)
-
6
エクセル マクロで数値が変った時行挿入できますか
Excel(エクセル)
-
7
VBAでセル入力の数式に変数を用いたい
Excel(エクセル)
-
8
Excel VBA 複数行を数の分だけ挿入したい
Visual Basic(VBA)
-
9
VBAで繰り返しコピーしながら下へ移動させる方法
Excel(エクセル)
-
10
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
11
excelで、セル内に文字が入力される毎に行が自動挿入される仕組みを作りたいのですが…
Excel(エクセル)
-
12
エクセル マクロ オートフィルの終点の指定について
Excel(エクセル)
-
13
vba 2つの条件が一致したらコピーして別シートに値のみ貼り付け
Visual Basic(VBA)
-
14
【VBA】特定の値が入った行をコピーして別シートに貼り付ける方法をおしえていただきたいです。
Excel(エクセル)
-
15
Excel VBAで同じフォルダ内のファイルを開くには?
Excel(エクセル)
-
16
VBAで文字列を数値に変換したい
Excel(エクセル)
-
17
常に特定の行の上に新規行挿入するマクロ
Excel(エクセル)
-
18
VBAを使って検索したセルをコピーして別の場所に貼り付ける。
Visual Basic(VBA)
-
19
Excel VBAで、検索後行の挿入をしたい。
Excel(エクセル)
-
20
別のシートから値を取得するとき
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
空白セルをとばして転記
-
5
Worksheets メソッドは失敗しま...
-
6
VBマクロ 色の付いたセルを...
-
7
VBAを使って検索したセルをコピ...
-
8
Excelで、あるセルの値に応じて...
-
9
複数の列の値を結合して別の列...
-
10
VBAの構文 3列置きにコピーし...
-
11
rowsとcolsの意味
-
12
DataGridViewに空白がある場合...
-
13
VBA グラフX軸の変更
-
14
VBAで、離れた複数の列に対して...
-
15
VBAにて 商品と月別ごとにの...
-
16
Changeイベントでの複数セルの...
-
17
targetをA列のセルに限定するに...
-
18
Cellsのかっこの中はどっちが行...
-
19
VBScriptでfindを使うには??
-
20
VBAで指定範囲内の空白セルを左...
おすすめ情報
公式facebook
公式twitter