
任意の長さのテキスト文があるとします。
str0 = "今日の天気は晴れです。"
この文で、「天気は」という文字列以前、あるいは以降の文をすべて取得するにはどうしたらよいでしょうか。
最終的な目的は「晴れ」という文字列を抜き出したいだけですので、別の方法があればそちらでも構いません。ただし、その文に「晴れ」という文字が入っているかどうかは取得前は不明ですので、「晴れ」を検索語にする方法ではありません。また、「天気は」、「です。」の文字は確実に文章に含まれているのですが、何文字目にあるかということも不明の場合を想定しています。
次のようなプロセスを考えています。
1.str0から「天気は」以降の文を取得 → str1 = "晴れです。"
2.str1から「です。」以前の文を取得 → str2 = "晴れ"
No.1ベストアンサー
- 回答日時:
お早うございます。
こんな感じで如何でしょうか。
Sub 文字列取得()
Dim str0 As String
Dim str1 As String
Dim str2 As String
Dim wFindStr As String
'
str0 = "今日の天気は晴れです。"
'str0から「天気は」以降の文を取得
wFindStr = "天気は"
str1 = Mid(str0, Len(wFindStr) + InStr(1, str0, wFindStr))
'
'str1から「です。」以前の文を取得
wFindStr = "です。"
str2 = Left(str1, InStr(1, str1, wFindStr) - 1)
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- Visual Basic(VBA) VBAで、特定の文字より後を削除して残った数値を文字列に変換と特定の文字より前も削除したい 3 2022/04/15 19:21
- Excel(エクセル) Excelのマクロで、特定のセルから順番に値を取得したい 5 2022/12/06 15:34
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- UNIX・Linux sedでの正規化 2 2022/05/10 11:39
- Excel(エクセル) Excelの列から検索して該当する行を別シートに転記するVBA 2 2022/12/20 09:35
- Visual Basic(VBA) エクセルVBA 2 2022/04/27 13:29
このQ&Aを見た人はこんなQ&Aも見ています
-
VBAで、特定の文字より後を削除して残った数値を文字列に変換と特定の文字より前も削除したい
Visual Basic(VBA)
-
ある特定の文字以降全て削除したいです。
Excel(エクセル)
-
VBAで特定の文字以降の文字列の色の変更をしたい
Excel(エクセル)
-
-
4
【VBA】テキストファイルから特定の文字列を抽出して、エクセルに出力する
Excel(エクセル)
-
5
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
6
指定した文字があった場合、その行を削除するマクロが欲しいです
Excel(エクセル)
-
7
vba 2つの条件が一致したらコピーして別シートに値のみ貼り付け
Visual Basic(VBA)
-
8
【Excel VBA】複数ある特定の文字列を含む行を削除
Excel(エクセル)
-
9
【VBA】2つのシートの値を比較して条件一致したら、同じ行の隣の値を別ブックへ転記したいです。 VB
Visual Basic(VBA)
-
10
VBAでの Replace関数で、ワイルドカードは使えないのでしょうか?
Visual Basic(VBA)
-
11
ExcelのVBAで連番を振る。
Excel(エクセル)
-
12
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
13
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
14
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
15
エクセルでセル内の文字列の最後のスペース以下を削除するには?
Excel(エクセル)
-
16
マクロで#N/A"のエラー行を削除したい"
Visual Basic(VBA)
-
17
【VBA】指定したセルと同じ値で、別シートにあるセルに移動するには?
Visual Basic(VBA)
-
18
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
19
【VBA】特定の値が入った行をコピーして別シートに貼り付ける方法をおしえていただきたいです。
Excel(エクセル)
-
20
【Excel VBA】指定行以降をクリアするには?
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【C#】FindWindowExの使い方を...
-
「取得先」という表現について
-
curlで取得出来るデータの制限...
-
IPアドレスとMACアドレスを取得...
-
Yahoo! のトップページのような...
-
VB.NETでボリュームを取得・設...
-
ExcelVBAで、FileSystemObject...
-
ドライブ文字からハードウェア...
-
recordsetが取得できなかった場合
-
【VBA】EXCELブックを開かずに...
-
潮汐表の表示方法
-
PHPを使って、別サイトの一部を...
-
RSSで取得したデータが文字切れ...
-
携帯の『ページ取得中』について
-
VBAでキーワード検索
-
コンビニで住民票を取得した場...
-
Dosブロンプトでtabを出力したい
-
<a href>タグ内のURL抽出
-
findstrのerrorlevel
-
cakephpで$paginatorにつけたい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「取得先」という表現について
-
コンビニで住民票を取得した場...
-
Yahoo! JAPAN IDを新規取得でき...
-
EXCEL、マクロ-改ページ行番号...
-
Excel VBA:特定の文字列以降(...
-
VBS「開いているページ」のURL...
-
【C#】FindWindowExの使い方を...
-
ps3で久しぶりにCDの音楽情報取...
-
IPアドレスとMACアドレスを取得...
-
ローカルのコンピュータ名を取...
-
VBAでPDFのアクティブページ番...
-
VB.NETでボリュームを取得・設...
-
アメブロでテーマを指定したRSS...
-
DMMの動画を全件取得したのです...
-
(Win32)ファイルパスから物理ド...
-
【VBA】EXCELブックを開かずに...
-
各クライアントマシンのログイ...
-
VB or VBScriptでPCの製造番号...
-
format関数について
-
PHPを使って、別サイトの一部を...
おすすめ情報