戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 親トピックをトピックトップへ ]
このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 

このトピック参照回数 :
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のコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他



このトピック内容の全ページ数 / [0]

- Child Forum -
Edit:ゆう-G