このトピックに書きこむ |
---|
Re[1]: 指定する文字を検索し図形〇を挿入する方法 | |
---|---|
[195743] Re[1]: 指定する文字を検索し図形〇を挿入する方法- ■記事引用/メール受信=OFF■ □投稿者/ マルチ -(2023/05/19(19:23)) □U R L/ [使用方法]より引用 > マルチポストはご遠慮ください。 > (同じ内容の質問を、同時に複数の掲示板に投稿 する行為をマルチポストと言います。) 詳しくはこちらをご覧になってください。 |
[195742] 指定する文字を検索し図形〇を挿入する方法- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ かんた -(2023/05/19(12:51)) □U R L/ マクロを使って指定した文字を〇で囲みたいのです。 サイトでサンプルを探してみたのですがいまいちわかりにくかったのでサンプルを添付しますので添削と修正をお願いできればと思います。 サンプル Sub 〇で囲む() Dim Ash As Worksheet Dim Bsh As Worksheet Set Ash = ThisWorkbook.Worksheets("設定") Set Bsh = ThisWorkbook.Worksheets("図形挿入") Dim zukeiA As Shape For Each zukeiA In Bsh.Shapes On Error Resume Next If zukeiA.TopLeftCell.Address >= Bsh.Cells(1, 1).Address Then zukeiA.Delete End If If Err <> 0 Then Err.Clear End If Next Dim ARange As Range Dim keyWord As String Dim zukeiH As Range gyoa = Ash.Cells(Rows.Count, 2).End(xlUp).Row For i = 4 To gyoa keyWord = Ash.Cells(i, 2) For j = 1 To 10 For k = 1 To 10 Set ARange = Range(Cells(j, k), Cells(j, k)) Set zukeiH = ARange.Find(keyWord, LookAt:=xlWhole) If zukeiH = keyWord And Len(keyWord) = 1 Then With Bsh.Shapes.AddShape(msoShapeOval, zukeiH.Left, zukeiH.Top, 15, 15) .Fill.Visible = msoFalse .Line.Weight = 1 .Line.ForeColor.RGB = vbBlock End With ElseIf zukeiH = keyWord And Len(keyWord) = 2 Then With Bsh.Shapes.AddShape(msoShapeOval, zukeiH.Left, zukeiH.Top, 30, 15) .Fill.Visible = msoFalse .Line.Weight = 1 .Line.ForeColor.RGB = vbBlock End With ElseIf zukeiH = keyWord And Len(keyWord) = 3 Then With Bsh.Shapes.AddShape(msoShapeOval, zukeiH.Left, zukeiH.Top, 40, 15) .Fill.Visible = msoFalse .Line.Weight = 1 .Line.ForeColor.RGB = vbBlock End With ElseIf zukeiH = keyWord And Len(keyWord) = 4 Then With Bsh.Shapes.AddShape(msoShapeOval, zukeiH.Left, zukeiH.Top, 50, 15) .Fill.Visible = msoFalse .Line.Weight = 1 .Line.ForeColor.RGB = vbBlock End With ElseIf zukeiH = keyWord And Len(keyWord) = 5 Then With Bsh.Shapes.AddShape(msoShapeOval, zukeiH.Left, zukeiH.Top, 60, 15) .Fill.Visible = msoFalse .Line.Weight = 1 .Line.ForeColor.RGB = vbBlock End With Else End If Next Next Next End Sub となっています。図定ワークシートの参照セルはC25です。そこに入力する文字を図形挿入のワークシートの文字を〇印で囲いたいです。ご教授宜しくお願い致します。 この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |