アプリ版:「スタンプのみでお礼する」機能のリリースについて

マクロの全くわからない初心者です。
ボタンを押す事で、「○列の□という文字を△に置換(この△は都度指定したい)」という動作をさせる事は可能でしょうか?

よろしくお願いいたします。

質問者からの補足コメント

  • ご回答ありがとうございます。
    今回数式内の文字を置換したいのですが、下記のように作成してみてひとまず「gとh列の□を△(固定)へ置換」ができるボタンを作成できました。

    Sub ボタン1_Click()
    Range("g1:h1000).Select
    Selection.Replace What:="□",Replacement:="△"
    Range("g1").Select
    End Sub

    これで、△の部分をその都度指定できればいいのですが、どのような方法があるでしょうか?

    No.1の回答に寄せられた補足コメントです。 補足日時:2018/04/18 00:06

A 回答 (4件)

こうすれば、対話形式になります。


対話形式ですから、一旦決まったものを取り消しや、訂正することも可能です。


'//
Sub ボタン1_Click()
Dim a As Variant
a = Application.InputBox("置換値を入力してください。", Type:=2)
If a = False Then Exit Sub
Range("G1:H1000").Select
 With Application.Dialogs(xlDialogFormulaReplace)
   .Show "□", a
 End With
End Sub
    • good
    • 2
この回答へのお礼

解決しました

うまくいきました!ありがとうございます。

お礼日時:2018/04/19 01:10

ユーザフォームを使用する方が、結果はスマートですが、とりあえず、ユーザフォームを使用しないで、シートの上だけで、標準モジュールのコードだけでやる方法です。



Sub ボタン1_Click()
Dim TaishoArea As Range
Dim KobestuKasho As Range
Dim restuN As String, Taisho As String, Chikan As String
restuN = Cells(1, 2) ' Cells(1,2),Range("B1")にある列の文字○(例:「H」)
Taisho = Cells(1, 3) ' Cells(1,3),Range("C1")にある文字□(例:「山」)
Chikan = Cells(1, 4) ' Cells(1,4),Rangw("D1")にある文字▲(例:「海」)

Set TaishoArea = Range(restuN & "5:" & restuN & "1000")

For Each KobestuKasho In TaishoArea
KobestuKasho = Replace(KobestuKasho, Taisho, Chikan)
Next

TaishoArea.Select  ' 処理には関係ないです。どこを置換対象としたのかを示す。
End Sub

「Set TaishoArea = Range(restuN & "5:" & restuN & "1000")」を換えると、置換対象範囲が変わります。
「restuN = Cells(1, 2) 」「Taisho = Cells(1, 3)」「Chikan = Cells(1, 4)」は、使ってないところなら、どこでも良いです。
ユーザフォームを使用する方法については、知っていることを教えていただければ、その上で回答できると思います。
「excelマクロ ボタンを押して文字を置」の回答画像3
    • good
    • 2
この回答へのお礼

ありがとう

ありがとうございました!参考になりました。

お礼日時:2018/04/19 01:09

可能です。

    • good
    • 1

「○列の□という文字を△に置換(この△は都度指定したい)」という動作をさせる事は可能でしょうか?


「エクセルシートの○列(この○はその都度指定したい)のセルに表示されている□という文字を、△に置換(この△もその都度指定したい)という動作を、エクセルのマクロを作っておいて、ユーザーフォームのボタンクリックで実現させることは可能です」

ただ マクロの全くわからない初心者さんに どこからどのように説明すれば良いのかが、難しいです。
https://oshiete.goo.ne.jp/qa/10395760.html
全く初心という程度とか、なにかヒントはないですか。
この回答への補足あり
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています