- ベストアンサー
エクセル内のオートシェイプ(楕円)内の数字検索
Excel マクロでオートシェイプ(楕円)内の数字を検索するマクロを探しています。 数字は同時に複数検索できるように、シート内の複数のセルに数字を入力してボタンを押すと 検索が開始されるような物が有ればよいのですが。 下記のアドレス回答が近かったのですが オートシェイプ全種類の検索となってしまう 同時に複数の数字の検索が出来ないなどの 問題が有ります。 http://okwave.jp/qa/q4407755.html
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
変更箇所1: If se.Item(i).Type = msoAutoShape Then ↓ If se.Item(i).AutoShapeType = msoShapeOval Then 変更箇所2: MsgBox (Str(total) & "個のAutoShapeのうち" & key) ↓ MsgBox (Str(total) & "個の楕円のうち" & key) InputBoxの代わりに「シート内の複数のセル」をFor each nextで順繰り巡回するぐらいは,ご自分でやってみてください。 これ以上はちょっと失礼とは思いますが一応念のため参考に: dim h as range for each h range("A1:A10") if h <> "" then msgbox h.value 'and so on end if next
その他の回答 (2)
- hondamssaf
- ベストアンサー率25% (1/4)
楕円だけの検索なら Sub TEST() For Each D In Sheet1.Ovals MsgBox D.Text Next End Sub でも可能です
- mar00
- ベストアンサー率36% (158/430)
標準モジュールに Sub Macro1() UserForm1.Show Range("A1").Select End Sub ユーザーフォームに Dim COUNTER As Integer Private Sub UserForm_Initialize() CommandButton1.Caption = "検索" CommandButton2.Caption = "修正" CommandButton3.Caption = "終了" COUNTER = Cells(Rows.Count, 1).End(xlUp).Row For INP1 = 1 To COUNTER Controls("TextBox" & INP1) = Range("A" & INP1) Next INP1 End Sub Private Sub CommandButton1_Click() For INP2 = 1 To COUNTER ActiveSheet.Shapes(INP2).Select Controls("TextBox" & INP2) = Selection.Characters.Text Next INP2 End Sub Private Sub CommandButton2_Click() For INP3 = 1 To COUNTER ActiveSheet.Shapes(INP3).Select Selection.Characters.Text = Controls("TextBox" & INP3) Next INP3 End Sub Private Sub CommandButton3_Click() Unload Me End Sub >シート内の複数のセルに数字を入力 COUNTER = Cells(Rows.Count, 1).End(xlUp).Rowで A列にしていますので1の部分を適宜修正してください。 CommandButton1を押すと入力した数字のオートシェイプ(楕円)内の数字が 表示されます。 CommandButton2を押すとテキストボックスに入力した数値が オートシェイプ(楕円)内の数字にかわります。ここは必要なかったかもしれません。 テキストボックスは必要なだけ配置してください。 (注)タブ゛オーダーで必ず上からTextBox1、TextBox2と順番に配置されていることを 確認してください。
お礼
回答ありがとうございます マクロ初心者の為、内容の理解に時間が掛っていますが 他の回答者様の情報でなんとか自分の思っていたマクロ が組めました、こちらのマクロの理解にはもう少し時間が かかりそうですが、とりあえずお礼をさせていただきます。
お礼
回答ありがとうございます マクロ初心者のため迷惑をおかけしました 変更箇所1の情報など、悩んでいた箇所がようやく解りました インプットボックス→順繰りも悩みましたが、他の方の協力も有り なんとか思っていたマクロを組むことが出来ました。 ありがとうございます。