文字列の置き換え | |
---|---|
[194608] 文字列の置き換え- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ 中村 -(2022/01/14(16:14)) □U R L/ 実行前 A B C 1 A02 AA-99-NN 2 BB-00-VV 3 CC-88-KK 4 A02 AA-03-AA 以降もデータ500件ほど続きます 実行後 A B C 1 A02 AA-99-AA 1 A02 AA-99-NN 2 BB-00-VV 3 CC-88-KK 4 A02 AA-03-AA 5 A02 AA-03-NN 以降もデータ500件ほど続きます このような表にしたいのですが どのようなVBAになるのでしょうか Excel2019 windows10 |
[194609] Re[1]: 文字列の置き換え- ■記事引用/メール受信=OFF■ □投稿者/ マナ -(2022/01/14(17:24)) □U R L/ > 以降もデータ500件ほど続きます 例としては、不十分です。 せめて、もう1ブロックお願いします。 > > このような表にしたいのですが できれば、どんなルールなのか 文章による説明もお願いします。 (箇条書きで) > |
[194610] Re[2]: 文字列の置き換え- ■記事引用/メール受信=OFF■ □投稿者/ 中村 -(2022/01/14(17:47)) □U R L/ 実行前 A B C 1 A02 TT-99-NN 2 BB-00-VV 3 CC-88-KK 4 A02 WW-03-AA 5 DD-66-FF 6 EE-33-QQ 7 A02 TT-99-NN 以降もデータ500件ほど続きます 実行後 A B C 1 A02 TT-99-AA 1 A02 TT-99-NN 2 BB-00-VV 3 CC-88-KK 4 A02 WW-03-AA 5 A02 WW-03-NN 6 DD-66-FF 7 EE-33-QQ 8 A02 TT-99-AA 9 A02 TT-99-NN 以降もデータ500件ほど続きます ・末尾がAAの場合、下の行に末尾をNNに変えたものを挿入したい ・末尾がNNの場合、上の行に末尾をAAに変えたものを挿入したい 宜しくお願いします Excel2019 windows10 |
[194611] Re[3]: 文字列の置き換え- ■記事引用/メール受信=OFF■ □投稿者/ マナ -(2022/01/14(19:19)) □U R L/ 一例 Sub test() Dim dic As Object Dim v Dim k As Long Dim s As String Set dic = CreateObject("scripting.dictionary") v = Cells(1).CurrentRegion.Value For k = 1 To UBound(v) s = v(k, 2) Select Case Right(s, 2) Case "AA", "NN" s = Left(s, Len(s) - 2) dic(dic.Count) = Array(v(k, 1), s & "AA") dic(dic.Count) = Array(v(k, 1), s & "NN") Case Else dic(dic.Count) = Array(v(k, 1), v(k, 2)) End Select Next Cells(1).Resize(dic.Count, 2).Value = Application.Index(dic.items, 0, 0) End Sub この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[194612] Re[4]: 文字列の置き換え- ■記事引用/メール受信=OFF■ □投稿者/ マナ -(2022/01/14(19:32)) □U R L/ このほうがわかりやすかったかも。 Sub test2() Dim k As Long Dim s As String For k = Cells(Rows.Count, "B").End(xlUp).Row To 1 Step -1 s = Cells(k, "B").Value Select Case Right(s, 2) Case "AA", "NN" Rows(k).Copy Rows(k).Insert s = Left(s, Len(s) - 2) Cells(k, "B").Resize(2).Value = _ Application.Transpose(Array(s & "AA", s & "NN")) End Select Next Application.CutCopyMode = False End Sub この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[194634] Re[5]: 文字列の置き換え- ■ / 記事引用/メール受信=OFF■ □投稿者/ マナ -(2022/01/17(21:37)) □U R L/ 移動しました ht tps://excelfactory.net/excelboard/excelvba/excel.cgi?mode=all&namber=194627&rev=0 |
[194636] Re[6]: 文字列の置き換え- ■記事引用/メール受信=OFF■ □投稿者/ 中村 -(2022/01/17(21:50)) □U R L/ マナさん いつもありがとうございます。 移動先のURLありがとうございます。 本来なら私が提示しなくてはならないところ、申し訳ありません。 |
このトピックに書きこむ |
---|