大量の計算式の中に含まれている
AA(BBB)やSS(CCC)のような、丸かっこで囲われた文字列を抽出し、かっこの前にある文字列を後ろにくっつけてたいです。※文字列と文字列の間にピリオド(.)を追加したい。
置換前 AA(BBB)
置換後 BBB.AA
このような置換をしたいのですが、1つのセルの中に複数個このような置換をしたい文字列が出てきます。
例)置換前
A = 100.0
QQ(ABC) = ZZ(DEF) - 50.0
IF(QQ(ABC) < 0.0) THEN
SS(ABC) = 100.0
END IF
↓
例)置換後
A = 100.0
ABC.QQ = DEF.ZZ - 50.0
IF(ABC.QQ < 0.0) THEN
ABC.SS = 100.0
END IF
どのように組めば上記のような置換ができるでしょうか?
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
こんにちは
>丸かっこで囲われた文字列を抽出し、かっこの前にある文字列を後ろに~
ご説明だけの条件だと、
QQ(ABC) = ZZ(DEF) - 50.0
は
DEF.ABC.QQ = ZZ - 50.0
とかになりそうですが・・・
ですので、「()内の文字列も、その前の文字列も連続した英大文字だけを対象とする」という条件を勝手に付加しました。
(条件が異なる場合でも、同様の方法で可能でしょうから、修正することでできるものと思います)
◇ 対象文字列がA1セルにあり、B1セルに置換後を表示すると仮定して、
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "([A-Z]+)\(([A-Z]+)\)"
Range("B1").Value = .Replace(Range("A1").Text, "$2.$1")
End With
とかではいかがでしょうか?
(ご提示の例であれば、置換前は置換後のようになります)
ご回答ありがとうございます。
なるほど。
条件定義が不十分のようですね。
ちなみにカッコ内の文字列には英大文字のみではなく、数字と記号(半角ハイフン‐)が含まれます。
諸事情で今回の件、置換する必要が無くなったためいったん質問を閉めさせていただきます。
また条件定義をやり直して再質問させていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/03/09 10:07
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Visual Basic(VBA) Vbaで数式をポーランド記法に変換するコードを作って実行しようとするとフリーズします。 1 2022/05/24 17:53
- その他(コンピューター・テクノロジー) 正規表現の置換で一部の文字列をそのまま残したい 2 2022/05/03 19:19
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- Perl perl このテキストファイルを簡単に配列に入れるには? 2 2022/04/27 20:24
- その他(データベース) カラム上の重複を削除するクエリを教えてください 3 2022/04/12 14:11
- UNIX・Linux bashでシングルクォート内の変数の組み込み方教えてください。 2 2023/02/14 19:30
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
csvデータのダブルクォーテーシ...
-
正規表現で、特定の文字列を含...
-
各項目がダブルクォーテーショ...
-
ハングルを日本語に置換
-
テキストボックスの文字列を置...
-
Excel VBA 教えてください。 VB...
-
C言語でテキストファイルの内容...
-
VBA 置換文字がみつからない時
-
C言語の質問です、プログラミン...
-
バッチファイルの処理が実際の...
-
HTML難読化ツールを探しています。
-
word オートシェイプ内も一括変換
-
複数のパワーポイントファイル...
-
ダブルコーテーション 、"を二...
-
xmlファイル内の文字列置換
-
スペースで区切られた氏名から...
-
Excel・ユーザーフォームの情報...
-
置換した文字色の変更
-
秀丸で数字だけの行を削除したい
-
\\(円)記号を置換したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
csvデータのダブルクォーテーシ...
-
VBA 置換文字がみつからない時
-
csvデータ ダブルクォーテ...
-
各項目がダブルクォーテーショ...
-
正規表現で、特定の文字列を含...
-
スペースで区切られた氏名から...
-
xmlファイル内の文字列置換
-
正規表現 特定の文字列を含む行...
-
○文字目に文字挿入
-
PowerShellでテキストの空白行...
-
EXCEL警告「置換対象のデータが...
-
ハングルを日本語に置換
-
C#で空白行を削除する方法
-
python 大文字小文字を区別しな...
-
EXCELマクロを用いてグラフの系...
-
EXCEL VBA でCTRL+Fのダイア...
-
テキストファイル中の文字列の置換
-
word オートシェイプ内も一括変換
-
Excel・ユーザーフォームの情報...
-
テキストボックスの文字列を置...
おすすめ情報