|
▼ちゃっぴ さん:
お世話になっております。
いろいろ勉強したのですが、ループについて教えて頂けないでしょうか?
1.cells(1,1)のテキストファイルを開く。
2.そのテキスト内の1行目に一致するデータがあれば、その行をcells(2,1)に出力する。
3.最後の行まで繰り返し、textファイルを閉じる。
ループ
4.次にcells(1,2)のテキストファイルを開く。
5.そのテキスト内の1行目に一致するデータがあれば、その行をcells(2,2)に出力する。
6.最後の行まで繰り返し、textファイルを閉じる。
ループ
7.次にcells(1,3)のテキストファイルを開く。
8.そのテキスト内の1行目に一致するデータがあれば、その行をcells(2,3)に出力する。
9.最後の行まで繰り返し、textファイルを閉じる。
Sub S_ChkError()
Dim strFilePath As String
Dim strBuffer As String
Dim vntDivBuf As Variant
Dim lngLineNo As Long
Dim i As Long, j As Long, k As Long
Dim ファイルx As Long
'For j = 1 To 1
'For k = 1 To 1
For ファイルx = 1 To 1
j = 2 '2行目 ←
k = 2 '2列目 ←
strFilePath = Cells(1, ファイルx)
'テキストファイルオープン
Open strFilePath For Input As #1
'最終行までループ
Do
'行番号インクリメント
lngLineNo = lngLineNo + 1
'1行読み出し
Line Input #1, strBuffer
'各要素に分解(配列に格納)
vntDivBuf = Split(strBuffer, " ")
'同じ値がないかマッチング
For i = 0 To 1
If vntDivBuf(i) = vntDivBuf(i + 3) _
Or vntDivBuf(i) = vntDivBuf(i + 6) _
Or vntDivBuf(i + 3) = vntDivBuf(i + 6) Then
'セルへの出力を記述してください
Sheets("Sheet1").Cells(j, k).Value = lngLineNo
j = j + 1
'k = k -1
Exit For
End If
Next i
Loop Until EOF(1)
Close #1
'Next j
'Next k
Next ファイルx
End Sub
|
|