これは完全に備忘録ではある。似たような困り事があったときに戻れるように記す。
無能は普段Googleスプレッドシートを活用していないので関数に疎い。
Googleスプレッドシートでセル内に余計な任意の文字があります。
これを一括で削除するような方法はありますか?
例えば、B列には銘柄コードが入っているのですが、『4061.T』のように「.T」が余計に含まれています。
銘柄コードの4桁だけが欲しいのです。
4桁の数字だけになれば、自作関数に銘柄コードを含まれられるのになぁと思っています。
何か方法があれば教えてください。
削除できる関数はいくつかある。用途によって使い分けよう。
はい、簡単に一括削除できます 👍
Googleスプレッドシートなら 関数で一瞬 です。
今回は
4061.T → 4061
のように「.T」を消して、4桁の数字だけ取り出したいのですね。
✅ 方法①(いちばん簡単):SUBSTITUTE関数
「.T」を消すだけならこれが最短です。
=SUBSTITUTE(B2,”.T”,””)
これを入力すればOKです。
✅ 方法②(より安全):LEFT関数で4桁だけ取得
「必ず4桁だけ欲しい」ならこちら。
=LEFT(B2,4)
これなら
4061.T → 4061
になります。
✅ 方法③(おすすめ):正規表現で数字だけ抽出
今後
4061.T
4061.JP
4061abc
みたいなデータが混ざる可能性があるなら、これが一番強い。
=REGEXEXTRACT(B2,”[0-9]{4}”)
意味:
- [0-9] → 数字
- {4} → 4桁
👉 「4桁の数字だけ抜き出す」関数です。
✅ 列全体を一発で処理したい場合(ARRAYFORMULA)
C2にこれを入れると、B列全体を自動処理します。
=ARRAYFORMULA(IF(B2:B=””,””,REGEXEXTRACT(B2:B,”[0-9]{4}”)))
これを一つのセルに入力すると、その列の以下のセルに自動でB列全体の入力が行われる。
追記:数値として扱いたい時のVALUE()
参考までにもしこの4桁を数値として扱いたいなら、最後に VALUE() をかませればOKです。
例:
=VALUE(REGEXEXTRACT(B2,”[0-9]{4}”))




