テキストファイル内の文章を最後まで読み込みたいのですが、

do
 Line Input #1, gyou
 処理1
while 条件

で、条件はどのような記述にすればいいのですか?

テキストファイルには、改行コードのみの行や、スペースのみの行が混在しています。
また、行数も常に変動するので、 for~nextで予め回数を指定することも出来ません。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qここでの質問が2chに

すいません、教えて下さい。

先程質問した内容が下記に勝手に転載されていました。

参考(2ch?):
http://engawa.2ch.net/test/read.cgi/estate/1325163925/
※最後にあります

ここでの質問はこちら。
http://oshiete.goo.ne.jp/qa/7399371.html

これはどういう事なのでしょうか?
意味が無い事のように思えて、何がしたいのか理解が...

よろしくお願いします。

Aベストアンサー

いわゆる「誤爆」ではないでしょうか?
あまりにも関係がない書き込みのようなのでスルーされるでしょう。
下記のようなところに載ったわけではないので気にしなくて良いと思います。

参考URL:http://awabi.2ch.net/test/read.cgi/net/1323564424/

QVBAでテキストファイルからデータを読み込む方法

VBAでテキストファイルからデータを読み込む方法を探しています。
コンマ区切りのデータを、エクセルに書き込みたいです。
テキストファイルにはコンマ区切りで6個のデータを書き込んであります。
それを、セルD3からD7に書き込む方法を教えていただきたいです。よろしくお願いします。

Aベストアンサー

お世話になります。

D3 ~ D7 って 5 個しかセルがないのですが...。
いいんでしょうか。

とりあえず、こんな感じでしょうか。
Private Sub CommandButton1_Click()
  Dim inputeds() As String
  Dim inputed As String
  Dim fileNo As Integer
  
  fileNo = FreeFile()
  Open "c:\test.csv" For Input As #fileNo
  Line Input #fileNo, inputed
  Close #fileNo
  inputeds = Split(inputed, ",", -1)
  
  Dim i As Integer
  For i = 3 To 7
    Dim rng As Range
    Set rng = Sheet1.Range("D" & CStr(i))
    rng.Value = inputeds(i - 3)
    Set rng = Nothing
  Next i
End Sub

お世話になります。

D3 ~ D7 って 5 個しかセルがないのですが...。
いいんでしょうか。

とりあえず、こんな感じでしょうか。
Private Sub CommandButton1_Click()
  Dim inputeds() As String
  Dim inputed As String
  Dim fileNo As Integer
  
  fileNo = FreeFile()
  Open "c:\test.csv" For Input As #fileNo
  Line Input #fileNo, inputed
  Close #fileNo
  inputeds = Split(inputed, ",", -1)
  
  Dim i As Integer
  For i = 3 To 7
    Dim rn...続きを読む

Q2chの言葉使い

よく2chで
美味しいんだよw
のように、最後にwが付いていますが、何か特別な意味があるのですか?

Aベストアンサー

waraiの省略ですね。
「(笑)」と同じですが、ちょっと嘲笑的な意味合い
を含む場合があるので、一般的なサイトでは
控えた方がいい場合もあります。

ほかにも、「(ry」ちおう表現を見かけますが、
「(略)」の省略形です。

Q【Access2003】VBAでタブ区切りテキストファイル読込

はじめまして。
【Access2003】を使用し、タブ区切りのテキストファイル読込をVBAで行っています。
カンマ区切りはわかるのですが、タブ区切りの方法がわからないので教えていただけませんか?

TransferTextを使用したかったのですが、読み込んだデータ1件1件に対して必須と桁数確認を行い、エラーがあった場合はテキストファイルにそのデータ1行を書き込み、エラーがない場合は1行テーブルに書き込みというように処理を分けたいからなのです。
とりあえず今のところカンマ区切りのCSVファイルを読み込むというようにしており、読み込む前にタブ区切りテキストファイルをカンマ区切りCSVファイルに変換する処理を入れようと思っています。
しかしタブ区切りテキストファイルをそのまま読むことができれば一番いいのですが。
ソースは以下の通りです。

'出力元CSVファイルを開く
lngFileNum = FreeFile()
'データ読込
Open strJsnFol & "\\" & strIriInf For Input As #lngFileNum
'CSVファイルの最初の行を読み込む
'CSVファイルより1件分を読み込み
Line Input #lngFileNum, strData
'カンマで区切って配列に代入
varData = Split(strData, ",", , vbTextCompare)
'データ種別のチェック
If varData(0) <> "XXX" Then
MsgBox "ファイルエラーです。", vbInformation + vbOKOnly
intErrFlg = 1
Exit Sub
End If
'タイムスタンプチェック
strSQL = " SELECT CREATE_TIME FROM TB WHERE    CREATE_TIME = '" & varData(1) & "'"
'SQLを実行
If DBAC.ExecSelect(strSQL) = 0 Then
'同じ処理時間のデータがなければ、タイムスタンプを取得
strCreateTime = varData(1)
Else
MsgBox "すでに処理済です。", vbInformation + vbOKOnly
intErrFlg = 1
Exit Sub
End If

'テーブルを開く
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("IF_TB")
'CSVファイルの全レコードを読み込むループ
Do Until EOF(lngFileNum)
'CSVファイルより1件分を読み込み
Line Input #lngFileNum, strData
'カンマで区切って配列に代入
varData = Split(strData, ",", , vbTextCompare)

'データチェック
If varData(0) = "" Or Len(varData(0)) > 12 Then
intChkErr = 1
End If
If varData(1) = "" Or Len(varData(1)) > 12 Then
intChkErr = 1
End If
If Len(varData(2)) > 1 Then
intChkErr = 1
End If
'エラーがあればエラーファイルに書き込み
If intChkErr <> 0 Then
strFileName = strJsnFol & "\\" & "ERR.csv"
lngFileNum2 = FreeFile()
Open strFileName For Append As #lngFileNum2
End If
Print #lngFileNum2, "ERR1," & strData
Close #lngFileNum2
Else
'各フィールドデータをテーブルに追加
With rst
.AddNew
!K_NO = varData(0)
!S_NO = varData(1)
!CD = varData(2)
!CREATE_TIME = strCreateTime
.Update
End With
End If
intChkErr = 0
Loop
rst.Close
Close #lngFileNum
Exit Sub

何かいい方法があれば教えていただけませんか?
よろしくお願いいたします。

はじめまして。
【Access2003】を使用し、タブ区切りのテキストファイル読込をVBAで行っています。
カンマ区切りはわかるのですが、タブ区切りの方法がわからないので教えていただけませんか?

TransferTextを使用したかったのですが、読み込んだデータ1件1件に対して必須と桁数確認を行い、エラーがあった場合はテキストファイルにそのデータ1行を書き込み、エラーがない場合は1行テーブルに書き込みというように処理を分けたいからなのです。
とりあえず今のところカンマ区切りのCSVファイルを読み込むと...続きを読む

Aベストアンサー

>'カンマで区切って配列に代入
>varData = Split(strData, ",", , vbTextCompare)
ここを変えればいいってことではない?

varData = Split(strData, vbTab, , vbTextCompare)

QFireFoxのアドオン「bbs2chreader」について

firefoxにbbs2chreaderを入れてるのですが、firefoxを起動するたびに「2chビューアにログイン失敗した」というような表示がでます(英語ですが)確かにbbs2chreaderを入れて設定は特にいじってないので「2chビューアを利用する」という所のIDもPASSも入ってません。というより2chビューアが何なのか、何が出来るのか知りません(汗)bbs2chreaderを入れたのは2chが見やすいとどこかで目にしたからです。ですが2chを頻繁に使うわけでもないので・・・やっぱりIDとかあった方がいいでしょうか?どこで登録するんでしょう・・・

Aベストアンサー

bbs2chreaderを開いてツール→オプション→全般タブ→2chビューア→設定
で2chビューアを利用するのチェックを外したら直りませんか?

Firefoxのツール→アドオン→拡張機能タブ→bbs2chreader→設定でも同じ操作が行なえます。

Q読み込んだファイルを自動的に読み込んでくれるExcel VBAの作り方を教えて下さい。

ファイル名001,002,003,・・・200
というファイルがありそれぞれのファイルにはB106・・B6109にデータが入っています。
これらのファイルのデータをまとめるために、
B12,C12,D12,・・・??12
にファイル名を
B13,B14,・・,B6016、C13,C14,・・,C6016、・・・
にそれぞれのファイルのデータが貼り付けられたファイルを作成したいのですが、
このためのマクロの作り方を教えて下さい。

何卒よろしくお願い致します。

Aベストアンサー

やりたい内容はほぼ明確になっていると思われます。
「作り方」をということなので、おおよそこんな手順でしょうか・・・

*まず、ループで処理できるように1ファイル分の処理を作ってみる
0)準備作業
 各変数の定義
 列番号(ループ用)の変数を作成
 集計用のブック、シートなどをセット
1)ファイル名を変数としておいて、ブックをオープン
 ブック名を列番号の12行に記入
 データを列番号の13行以降に記入
2)ブックを閉じる
 列番号(記入用)を+1

*↑の1~2をファイル名でループできるようにする
 ファイル名が質問文のように単純に番号で決まっているなら、
 format(n,"00#")などでファイル名を作成可能。(nはループの変数)

Q最後のパスワードを教えてください。

Escape to Obion 2の金庫のところの最後のパスワードがどうしてもわかりません

本来は自分で解くのが楽しみなんですが、どうしてもとけなさすぎるので、パスワードもしくはヒントをください。

色・数字どちらもわからないんです。2chを見てものってなくて(><)
よろしくお願いします。

Aベストアンサー

http://spicybox.blog39.fc2.com/blog-entry-168.html

Qエクセルvbaで特定フォルダに3つのcsvファイルがあり、それを読み込んで一つのブック内に3つのワー

エクセルvbaで特定フォルダに3つのcsvファイルがあり、それを読み込んで一つのブック内に3つのワークシートとしたいです。 簡単そうで、難しいです。ネットのサンプルプログラムもあまり参考になりませんでした。vbaは初心者です

Aベストアンサー

スマホなんでコードは無理ですが。

csv読み込むたびにシート作成したらいいんじゃないの?

とりあえず、処理の順序を日本語で置き換えることは出来ますか?

QCH3CHOとCH3CH2CHOの反応

CH3CHOとCH3CH2CHOから何種類のアルコールができるのでしょうか?
自分がやったところ、
2CH3CHOでブタノール、2CH3CH2CHOで2-エチルヘキサノール、CH3CHO+CH3CH2HOで2メチルブタノール、CH3CH2CHO+CH3CHOでペンタノール
以上4種でした。当たっていますか?

Aベストアンサー

2CH3CH2CHOは2-メチルペンタノールです。
それと、単にブタノール、ペンタノールとしたものは、1-ブタノール、1-ペンタノールであり、2メチルブタノールは2-メチルブタノールです。
多分、わかっているのだろうと思いますが、減点対象になります。

QVBAで制御コード付きテキストファイルの読み込み

EXCEL VBAでのテキストファイルのレコード読み込みについて教えてください。

EXCEL2003を使用しており、以下のレコードがあるテキストファイルがうまく
読み込めないのです。

レコード:
1件目「123■r456」
2件目「789■r888」

上記レコードをinput text命令で読みこむと1件目は「123」までしか読み込めず
2件目は「456」が読み込まれます。
3件目は「789」で読み込み終了となります。

本当は1件目が「123456」、2件目は「789」と読み込みたいです。

「■r」はホストコンピュータで使用している印刷イメージの制御コードです。

input text命令にオプションはあるのでしょうか?
またinput text命令以外にテキストファイルを読み込む命令はあるのでしょうか?

よろしくお願いいたします。

Aベストアンサー

下記を参考に、readAllで文字列変数に丸ごと読み込んで
http://officetanaka.net/excel/vba/filesystemobject/filesystemobject25.htm
■rのところを、Replace関数などで置換して、
それからSplit関数で改行コードで切り分けるのはどうでしょうか。
事前にテキストエディターで、前処理して取り除くという解もありそうですが。
以上、ご参考まで。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング