• ベストアンサー

Excel : テキストボックス中のテキストの検索・置換

Wendy02の回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

こんにちは。 #1の補足の、「残念ながら、マクロは使えません。」の意味が、マクロを使っていけないなら、諦めるしかありませんね。 それと、あまり、元に戻せないことを強調しているようなので、元に戻すオプションをつけてしまいました。 Const SW As Integer = 0 '順行 /0以外は、反転 は、簡単にいうと、=1 を入れれば、元に戻ります。 '------------------------------------- '標準モジュールが適しています。 Sub ReplaceInTextBoxes() Dim shp As Object Const BEF As String = "abcdefg" '検索後 Const AFT As String = "あいうえお" '置換語 Const SW As Integer = 0 '順行 /0以外は、反転 Const TX As Integer = vbTextCompare '全半角区別なし Const BIN As Integer = vbBinaryCompare '全半角区別あり Dim SWd As String Dim RWd As String   If SW = 0 Then  SWd = BEF: RWd = AFT Else  SWd = AFT: RWd = BEF End If  For Each shp In ActiveSheet.Shapes  If shp.Type = msoTextBox Then   shp.DrawingObject.Text = _   Replace(shp.DrawingObject.Text, SWd, RWd, , , TX) '全角半角区別なし  End If  Next End Sub

buzhidao
質問者

お礼

誤解を招く表現で申し訳ございませんでした。 マクロを使っていけないということはありません。 元に戻すオプションまでつけて頂きありがとうございました。

関連するQ&A

  • Excelで、テキストボックスに書かれた文字を検索したい

    表題の通りなのですが、 1) ExcelのSheetにテキストボックスを作成する 2) その中に文字(品番・コード名)を入力する 3) そのようなテキストボックスが、Sheet上にたくさんある 4) おなじブックの別Sheetにも同様のテキストボックスがたくさんある このような場合、ブックを開き、テキストボックス内の任意の文字を検索することは可能でしょうか?

  • テキストボックス

    たびたびの質問すみません。 エクセルVBAでテキストボックス等(条件)に入力すると、他のテキストボックスにエクセルシートから照合して表示させる方法で、条件のテキストボックス等を2つ以上にすることは可能でしょうか、あればやり方を教えてください。

  • EXCELでテキストボックスを選べない

    EXCELでのシートで セルにはデータが入っています セルはそれぞれクリックできます シートの真ん中に テキストボックス(四角い図形の中に テキストが入力されているので) があり それをクリックしようとすると ○の中に /が入っている 警告のようなものが出てきて テキストボックスを選べません  シートは保護されていないようです どんな設定がされていますか

  • [VBA]テキストボックスからエクセル反映(複数行)

    始めまして。初めて質問させて頂きます。至らない点があると思いますがよろしくお願い致します。 今テキストボックスよりエクセル(単一セル)に文字を入力するシートを作成しております。 テキストボックスで複数行入力(Enterで改行)の方法と複数行入力した文字をシート(1セル)に反映したいのですが良い方法をご存知でしたらご教授お願いします。 【やりたい事項】 テキストボックス内 (1)○は△です。(Enterで改行) (2)×は●です。 エクセルシート上(A1セルで) (1)○は△です。(ALT+Enter) (2)×は●です。 現状:MultiLineをTRUEにして右端まで文字入力すると2行目に入力可能 エクセルに反映すると「○は△です。×は●です。」と1セルで1行で表示となってます。 言葉足らずかもしれませんが、よろしくお願いします。

  • テキストボックスの大きさを、基準の大きさに戻す(エクセルVBA)

    図形のテキストボックスの大きさを取得して、その値を各テキストボックスの基準の大きさとして記録しておき、テキストボックスの大きさをマウスでドラッグして大きさを変えた後、ボタン1つでもとの大きさに戻したいのですが、どのようにすればよいでしょうか? 1)図形のテキストボックス、大きさの取得方法は? 2)基準の大きさと記録する方法は? 3)記録された大きさに戻すには?(シート上に配置されたボタンで実行) ※ 複数のシートに複数のテキストボックスがあります。 ※ シート毎にセットします。(シート毎にテキストボックスのサイズが違う為) ※ 現在、各テキストボックスには、基準位置がセットしてあり、ボタンで基準位置へ戻る仕組みが組まれています。(これをそのままにして・・・) ※ エクセル97と2000で使えるようにします。(作成は97) 宜しくお願い致します。

  • エクセルの置換について

    エクセルの置換について エクセル2000を使っています。 1シート内に日付(10/1、10/2・・・)が複数セルに入力されています。 このシート内のセルを毎月更新(10/3→10/31、10/4→11/1、10/5→11/2と一定周期で変更)するのですが、ひとつずつのセルに直接入力変換していくと時間が掛かる為、現状は(これも面倒ですが)置換機能で1日ずつ“すべて置換”で更新しています。 ですが、例えば11/1→11/29という置換をすると、先に打ち込んだ11/1を含むセル(11/11、11/13など)全てが置換されてしまうため、“完全に同一なセルだけを検索する”にチェックし、すべて置換をするのですが、『置換対象となる一致するデータが見つかりません。検索範囲にそのデータがないか、または条件に一致するレコードがありません。』というエラーメッセージが出てしまい、置換ができません。 11/1のように(/1)が入力されたセルだけを指定して、別の日付に全て置換する方法はどうすれば良いですか? 宜しくお願いします。

  • Excel 入力して置換するマクロ

    Excel 入力して置換するマクロ 同一書式で作成された表がある複数の書式シートのデータを、同一ブック内にあるデータ集約するための集約シートが「表 あ」にあります。 都合上、集約シートには表は、「表 あ」しかなく、1つの書式シートのデータのみしか表示していません。 書式シートのデータを参照する計算式内のシート名にあたる『Sheet1!』の部分を置換で他の書式シートに変えたいのですが、対象シートが複数あり上、誰でも置換をスムーズに行いたいので、インプットボックスにシート名を記載すれば置換できるマクロが作れないのか試行錯誤しております。 良い方法があればお教え下さい。

  • エクセル テキストボックスについて

    エクセルでテキストボックスへセルからの反映方法 の質問です。 エクセルのセル内の数字や文字を ・いくつかのシートを作成して ・そのシートのセルに反映させ、連動させる 方法はどのようにするのでしょうか。

  • テキストボックス一括編集

    ワードのテキストボックスが複数あり、そこには同じ番号が入っているのですが その番号を毎回印刷毎に変更する必要があり、毎回各テキストボックスを選択して編集しているのですが、一括で変更し手間やミスを無くそうと思っております。 一括での編集のやり方をご存知の方居りましたら、ご教授ください。 ※Ctrl+Hで検索して置換ではテキストボックス内の為か方法が間違っているのか検索にすらひっかかりませんでした。 ワード2013を使用しています。

  • エクセル2010テキストボックスとシートの保護

    テキストボックスとシートの保護について エクセル2010を使用しています。 シートの中には、結合したセルの中に文字が入力してあり、 またテキストボックスを使用して、その中に文字が入力してあるものもあります。 そこで質問なのですが、 (1)テキストボックスの枠(?)のみを固定(保護)し、入力だけを可能にする。 ※サイズの固定ではなく、その場所から動かさないように固定する方法です。 (2)セルを固定(保護)し、入力のみを可能にする。 上記を同時に可能にするためには、どのような操作をしたらよろしいでしょうか? ご教授お願いいたします。