
お世話になります。
VB6で、データ処理を行いたいと思っています。データを読み込んで、列ごとに配列へ格納することを考えています。
しかし、データによって列の数が異なっており、行き詰ってしまいました。
最初は3列のデータだったので、単に
Input #(ファイル番号), A(i), B(i), C(i)
としたのですが、後になって6列やら、8列のデータが出てきて、通用しなくなりました。
そこで、LineInputで1行ごとに読み込み、Splitを使って値を列ごとに配列へ格納しようと考えました。
しかし、データを見ると値を区切っている空白は複数(3~8程度)で、
うまくSplitできませんでした。
以前にも、VB.NETの場合での似たような質問がされていましたが、VB6ではどのようにしたらよいのでしょうか。
当方初心者なのでお恥ずかしい質問ですが、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
複数スペースでも配列にセットする関数を作ってみました。
十分動作確認したわけではないので、参考程度としてください。
Private Sub CommandButton1_Click()
Dim strSrc As String
Dim strDst() As String
strSrc = "ABC DEF GHI JKLMN"
strDst = split2(strSrc, " ")
End Sub
Private Function split2(ByVal strSrc As String, ByVal strDelimiter As String) As String()
Dim iTop As Integer
Dim iEnd As Integer
Dim iIndex As Integer
Dim strDst() As String
iIndex = 0
iTop = 1
Do
iEnd = InStr(iTop, strSrc, strDelimiter)
ReDim Preserve strDst(iIndex)
If iEnd = 0 Then
strDst(iIndex) = Mid(strSrc, iTop)
Else
strDst(iIndex) = Mid(strSrc, iTop, iEnd - iTop)
iIndex = iIndex + 1
iTop = iEnd + 1
Do While Mid(strSrc, iTop, 1) = strDelimiter
iTop = iTop + 1
Loop
End If
Loop While iEnd <> 0
split2 = strDst
End Function
回答、ありがとうございました。
完璧でした。質問して良かったです。
こんな方法があるなんて思いもしませんでした。とても勉強になりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SUMPRODUCT関数を用いた最小値
-
ExcelのINDEXとMATCH関数でスピ...
-
エクセル 条件を指定した標準...
-
[エクセル]連続する指定範囲か...
-
【VBA】ユーザーフォーム リス...
-
数字配列データを画像に変換す...
-
エクセルで、絶対値の平均を算...
-
【VBA】配列に数式を仕込む方法...
-
DataSetから、DataTableを取得...
-
VB6.0 ファイルの一括読込み
-
ListBoxへの読み込み
-
Generic.Listに1次元配列の配...
-
配列がとびとびである場合の書き方
-
Dictionaryを使い4つの条件の一...
-
文字の場合でもA列の最終行の...
-
Access2010で二次元配列をプル...
-
INDEX(D:D,L3)の意味は?
-
array関数で格納した配列の型を...
-
Excelのセルの色指定をVBAから...
-
テキストボックスのvalueとtext...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで、絶対値の平均を算...
-
[エクセル]連続する指定範囲か...
-
表にフィルターをかけ、絞った...
-
ExcelのINDEXとMATCH関数でスピ...
-
array関数で格納した配列の型を...
-
Excelのセルの色指定をVBAから...
-
DataSetから、DataTableを取得...
-
Excel オートフィルタのリスト...
-
Datatableへの代入
-
【VBA】ユーザーフォーム リス...
-
配列がとびとびである場合の書き方
-
VBAでの100万行以上のデータの...
-
二次元配列の中の各行の要素を...
-
スプレットシートのGetTextにつ...
-
.NET - 配列変数を省略可能の引...
-
VB6.0 ファイルの一括読込み
-
【VBA】配列に数式を仕込む方法...
-
iniファイルのキーと値を取得す...
-
配列のSession格納、及び取得方...
-
Split関数でLong配列に格納する...
おすすめ情報