プロが教える店舗&オフィスのセキュリティ対策術

例)
例えば以下のようなアドレスがあった場合、、、

yahoo.co.jp/example/

上記のような例があった場合、左側から一番最初の/から前を
別の文字列に置換したい。

こんな風に

google.co.jp/example/

これがたくさんあるので、関数で処理をしたいと思います。
どなたかお詳しい方、ご教授お願いいたします。

A 回答 (3件)

エクセルの問題として回答します。



関数式ではSubstitut関数にて、
特定の文字列を特定の文字列に置換するのが、一番手っ取り早い。
但し、単発的なのでマクロで処理する方が合理的と思います。

処理方法のマクロ主文は以下のようになります。

AA="yahoo.co.jp/example/"
BB="google.co.jp"
とすると
CC=BB & Right(AA,Len(AA)-Instr(AA,"/")+1)
にて、CC="google.co.jp/example/"となります。

Len(AA):AAの総文字数を取得(20)
Instr(AA,"/"):AAの中で最左方の/が左方から何番目に位置しているかを取得(12)
Right(AA,Len(AA)-Instr(AA,"/")+1):AAの文字列から右方から20-12+1=9個の文字を取得(/example/)

AA,BBにセルの値とし、
セルの値を順次取得し、CCを特定のセルに順次取り込めば、OK
取り込み条件を整理すれば、如何様にも取り込めます。
    • good
    • 0

条件が何も書いてないので下記の方法でも可能でしょう。


関数を使わなくてもテキストデータ形式で可能。
substring() で任意の文字列を切り出せますので
全ての行について行の先頭から12バイトがyahoo.co.jp/ ならば google.co.jp/ に置換する。
    • good
    • 0

excelの質問でしょうか?



最初の「/」から左側という前提での式ですが・・・。
セルA1に「yahoo.co.jp/example/」というアドレスを入力していたとして
セルA2には =SUBSTITUTE(A1,LEFT(A1,FIND("/",A1)-1),"google.co.jp")
の式を入れると「google.co.jp/example/」と置き換えすることが出来まが「google.co.jp」の部分は手入力しなければならないので、次の方法を取ることで簡素化も出来ます。

セルA1に「yahoo.co.jp/example/」と入力してあったとしてセルB1におきかえしたい文字を予め入力「google.co.jp」のように。
セルC1に=SUBSTITUTE(A1,LEFT(A1,FIND("/",A1)-1),B1)の式を入力して下方向へ式をコピーします。
    • good
    • 0

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