dポイントプレゼントキャンペーン実施中!

VBAのコードのことで教えてください。

エクセル「sheet1」にTextbox1を設置し,そこに入力した内容を,別シート「キーワード」に入力した文字列(A列が置換前の文字列,B列が置換後の文字列)で置換したいと考えています。
この時,
Public Sub 置換関数()
Dim 置換前文字列 As String
Dim 置換後文字列 As String
lastrow = Worksheets("キーワード").Cells(Rows.Count, 1).End(xlUp).Row

For i = 2 To lastrow

置換前文字列 = Worksheets("キーワード").Cells(i, 1)
置換後文字列 = Worksheets("キーワード").Cells(i, 2)

TextBox1.text=.Replace what:=置換前文字列, replacement:=置換後文字列・・・(※)
Next i
End Sub

(※)のコードが誤っていると思われるのですが,自力で修正ができません・・・。

どなたか,正しいコードを教えてください。
初心者故,拙いコードですがご容赦ください。
よろしくお願いします。

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

  • 補足です。
    テキストボックスは、ユーザーフォームから選択したコントロールです。

      補足日時:2021/03/12 18:45

A 回答 (3件)

TextBox1.text=.Replace what:=置換前文字列, replacement:=置換後文字列





TextBox1.Text = Replace(TextBox1.Text , 置換前文字列, 置換後文字列)
    • good
    • 0
この回答へのお礼

ありがとうございました。
どうやら、普通のセルでは置換ができるものの、テキストボックス上では置換ができないようでした。

ご回答いただき、勉強になりました。

お礼日時:2021/03/12 21:35

補足を見て。



ユーザーフォームのテキストボックスをシートには配置できないよ?
これってユーザーフォーム上のテキストボックスの話なの?
    • good
    • 0

まずシート上に置けるテキストボックスは2種類あります。


どのような物を置いているのか、若しくはどのような作業をして置いたのかを記載する方が宜しいかと。
    • good
    • 0

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

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


このQ&Aを見た人がよく見るQ&A