- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:「8桁の数字」を表現したい。)
8桁の数字の表現方法と要素の取り出し方
このQ&Aのポイント
- 8桁の数字の表現方法として、連続する8桁の数字は存在せず、要素の中には日付が含まれている。
- ファイルから1件目のレコードを取り出すためには、instr関数を使用して2番目の頭を見つけ、その位置を全体の長さから引くことができる。
- 質問者は「8桁の数字」の具体的な表現方法について質問しており、他に効率的な方法があれば教えてほしいとしている。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんなのはどうでしょう。 1件目のレコードは要素3つで構成されていると決まっているなら、"<>"を区切り文字としてSplit関数で分割し、先頭の3つを合体させる。 要素数が決まっていないなら、やっぱりSplitで分割して8桁の数字が2回目に出てくるまでの要素を合体。 Sub Sample() sStr = Split(Range("A1"), "<>") '要素が三つと決まっている場合 sSample1 = sStr(0) & "<>" & sStr(1) & "<>" & sStr(2) & "<>" '要素数が決まっていない場合 Sample2 = sStr(0) & "<>" For i = 1 To UBound(sStr) If IsNumeric(sStr(i)) And Len(sStr(i)) = 8 Then Exit For Sample2 = Sample2 & sStr(i) & "<>" Next i End Sub
その他の回答 (1)
- MackyNo1
- ベストアンサー率53% (1521/2850)
回答No.2
<>の後の8桁の数字の部分で改行したいという意味なら、以下のようなWordを使ったワイルドカード置換で簡単に文章を整形できます。 テキスト文書をワードに貼り付け、Ctrl+Hで置換ダイアログを出して、「オプション」ボタンをクリックして、検索する文字列の欄に「\<\>([0-9]{8})」置換後の文字列に「^13\1」と入力して「すべて置換」してください。
質問者
お礼
わざわざ有り難うございました。 やりたいことは質問のとおりで、ちょっと方向が違います。 お世話になりました。
お礼
早速有り難うございました。 やはり、ズバリはないみたいですね。 正規表現を調べましたが、ちょっとそぐわない感じです。 ヒントを頂いたので、 やはり、instrでloopさせました。