↓txtファイルの内容です。
1月10日 タイトル 内容
1月11日 タイトル 内容
1月12日 タイトル 内容
上記のファイル内容を1行づつ1個1個の変数にいれていきたいです。
下記のソースではtext(伝言1)ボックス内に空白ができてタイトルが表示されません。エラーもでず、どこがわるいのか教えてください。
Option Explicit
Dim 日付() As String
Dim タイトル() As String
Dim 内容() As String
Dim ingDatN As Long
Dim intFileNo As Integer
Dim fileCSV As String
Dim sBuff As String
Private Sub Form_Load()
'ファイル読み込み
fileCSV = App.Path
If Right(fileCSV, 1) <> "\" Then fileCSV = fileCSV & "\"
sBuff = Dir$(fileCSV & "伝言.csv")
If Len(sBuff) > 0 Then
fileCSV = fileCSV & sBuff
Else
Exit Sub
End If
ingDatN = 0
intFileNo = FreeFile
Open fileCSV For Input As #intFileNo
Do Until EOF(intFileNo)
ingDatN = ingDatN + 1
ReDim Preserve 日付(ingDatN) As String
ReDim Preserve タイトル(ingDatN) As String
ReDim Preserve 内容(ingDatN) As String
Input #intFileNo, 日付(ingDatN), タイトル(ingDatN), 内容(ingDatN)
Loop
Close #intFileNo
伝言1.Text = タイトル(1)
伝言2.text= タイトル(2)
End Sub
テキストファイルの内容がCSVになっていないのでは
1月10日, タイトル, 内容
1月11日, タイトル, 内容
1月12日, タイトル, 内容
こうかな
エラー出ると思うのだけど、実際のデーターと
貼り付けたものが違うのかな。
返事ありがとうございます。
カンマを入れると
これ以上データーがありませんと出ます。
デバッグボタン押すと Input #intFileNo, 日付(ingDatN), タイトル(ingDatN), 内容(ingDatN)
のところが黄色になります。
で、Input #intFileNo, 日付(ingDatN), タイトル(ingDatN)
と入れるとエラー無くデーター表示されました。
伝言3.text=内容(2)を追加して
エラー無く表示させたいです。
どうすればいいですか?
落ち着いてもう一度CVSのデーターを見直してください。
CSVのデーターをきちんと数が合うようにしたらいけました。
今回の件でカンマ単位で区切っていてそれぞれが行とかに関係なく、順番に変数に入っているってゆうのを今回理解できました。
ねろさんありがとうございました。
CVSなんて書いちゃった。(恥)
落ち着いて書かなくちゃ。
ツイート | ![]() |