テキストファイルから下記のデータを取り出したいです。
どうすればいいでしょうか?(エクセルのVBAでできますか?)
(やりたいこと)
・行の先頭から始まる000*******の数字を取り出す。
(******は任意の数字。注意点:00000*****には続けて、アルファベットや漢字が続く。また他の箇所にも数字があるが、行の先頭から始まるものだけをとりだしたい。)
・任意の文字列のあとの数字を取り出したい。
(注意点:数字の桁数はさまざまである。)
下記にイメージのテキストファイルとそれをもとにやりたいことを記載します。
だれかご教授ください。
お願いします。
(イメージ)
ABC 00005674 あいうえお
0000012345ABCDEF かきくけこ さしすせと 213223434
いろは98989898
ABC 00005675 あいうえお
0000012346ABCDEF かきくけこ さしすせと 213223434
いろは34343434
ABC 00005676 あいうえお
0000012347ABCDEF かきくけこ さしすせと 213223434
いろは1212
(次のように取り出したい。)
0000012345 98989898
0000012346 34343434
0000012347 1212
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
補足:
? "0000" & Trim(Str(Val(CutStr("ABC 00005674 あいうえお", "0000", 2))))
00005674
こんな手も・・・。
この回答への補足
回答ありがとうございます。
(イメージ)で下記の部分に関してですが、
”ABCDEF かきくけこ さしすせと 213223434”
この部分も実は、固定の文字列、数字ではなく、いろんな文字列、数字がならびます。
このような状況でも、上記関数で対応できるのでしょうか?
(理解してなくてすみません。)
”いろは”は常に固定です。
説明不足で申し訳ありせんでしたが、
下記のようなイメージもありうるということです。
(すみません。)
(イメージ)
ABC 00005674 あいうえお
0000012345NFFDEF かきくけこ さしすせと 213223434
いろは98989898
ABC 00005675 あいうえお
0000012346ABFGHJ かきくけこ さしすせと 3334
いろは34343434
ABC 00005676 あいうえお
0000012347ASADEF かきまみあかさた あいう 2132
いろは1212
No.3
- 回答日時:
ABC 00005674 あいうえお
0000012345ABCDEF かきくけこ さしすせと 213223434
いろは98989898
1行の中で 区切りが何ヶ所かありますが
全角スペースでしょうか 半角スペースでしょうか タブですか
TXTは固定の場所の固定の名前のファイルなのでしょうか
ファイルはたくさんあるのでしょうか
1ファイルの中に行数はたくさんあるのでしょうか
良ければ教えてください
この回答への補足
ご回答ありがとうございます。
>全角スペースでしょうか 半角スペースでしょうか タブですか
全角スペースです。
>TXTは固定の場所の固定の名前のファイルなのでしょうか
PDFファイルからテキストをコピーしてtxtファイルに張り付けたものですので、ファイル名は任意の名前で任意の場所です。
>ファイルはたくさんあるのでしょうか
ファイルは1ファイルです。
>1ファイルの中に行数はたくさんあるのでしょうか
はい。
行数は100行ほどです。
No.2
- 回答日時:
[イミディエイト]
? CutStr(CutStr("ABC 00005674 あいうえお", "ABC", 2), " ", 2)
00005674
? Format(Val(CutStr("ABC 00005674 あいうえお", "ABC", 2)),"00000000")
00005674
? CutStr("いろは98989898", "いろは", 2)
98989898
? CutStr("いろは34343434", "いろは", 2)
34343434
Excel 2003 のイミディエイトウインドウでの抜き出しテストです。
次の CutStr関数一つでも工夫しだいでは・・・。
<標準モジュール>
Public Function CutStr(ByVal Text As String, _
ByVal Separator As String, _
ByVal N As Integer) As String
Dim strDatas() As String
strDatas = Split("" & Separator & Text, Separator, , 0)
CutStr = strDatas(N * Abs((N <= UBound(strDatas))))
End Function
No.1
- 回答日時:
>テキストファイルから下記のデータを取り出したいです。
>どうすればいいでしょうか?(エクセルのVBAでできますか?)
簡単なのは、秀丸のような正規表現をサポートするエディタで要らない部分をスペースに置換する
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスでcsvに出力した際、頭...
-
accessで項目内の文字を自動改...
-
sqlldrのフィールドの属性について
-
TXTで作成したファイルをDATフ...
-
100万行のCSVを10万行ずつのフ...
-
CSVファイル出力時の、スキーマ...
-
accessでcsvファイルをインポー...
-
VBAでMSアクセスに、Tab区切り...
-
アクセスがインポートできる容...
-
Access95のエクスポートで教え...
-
【CSVファイル】先頭の文字列に...
-
AcceseからCSVファイルに吐き出...
-
ファイル名が同じ場合自動的に...
-
ThunderbirdのメールをCSVでま...
-
楽譜作成ソフトに詳しい方に質...
-
タブ区切りデータからダブルコ...
-
Excelデータをテキストファイル...
-
Access インポート
-
共有フォルダに誰が何にアクセ...
-
Batch: フォルダ内の特定のファ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【CSVファイル】先頭の文字列に...
-
TXTで作成したファイルをDATフ...
-
アクセスでcsvに出力した際、頭...
-
Access インポート
-
100万行のCSVを10万行ずつのフ...
-
ThunderbirdのメールをCSVでま...
-
タブ区切りデータからダブルコ...
-
カンマがデータとして入ってるC...
-
Access95のエクスポートで教え...
-
アクセスがインポートできる容...
-
CSVファイルのセルに「01」と入...
-
csvファイルが保存すると数...
-
Access2007のエキスポートについて
-
accessで項目内の文字を自動改...
-
エクセルデータをテキストファ...
-
Accessでdatファイルのインポート
-
TSVのファイルをACCESSにインポ...
-
OutlookからBecky!へ
-
sqlldrのフィールドの属性について
-
Accessで小数点以下を切り捨て...
おすすめ情報