文字を識別して、文字列の一部を取り出す。【VBA】

目次

環境

Windowsの仕様

エディション:Windows 10 Pro

バージョン:20H2

経緯

VBAのプログラムでファイル名を取得して、”_”以降は邪魔だったので、消せないか試してみた。

やったこと

↓の感じでできました。

Dim sheetname As String
Dim t As Long

sheetname = morino_kabu 
t = InStr(sheetname, "_")
t = Left(sheetname, t, - 1) 

1行目は変数を宣言しています。

2行目も変数の宣言です。

3行目は空白。

4行目はsheetnameという変数に今回消したい文字”morino_kabu”という文字列を入れています。

5行目はtという変数にInStr関数を使って、”_”を検索して代入しています。

6行目はMid関数を使って、sheetnameに代入した、「morino_kabu」の”_”以降を消して、「morino」だけにしました。これをさらにtへ代入しています。

この後の展開

このあとは、

Range("A1") = t

とかすると、 Range(“A1”) に「morino」が入力されます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次