0

この質問に対する答えを探しましたが、人々が答えている唯一の方法は Excel 関数を使用しているようです。テキスト ファイルに読み込む Excel のファイルがありますが、新しいデータが毎週出てきます。この最初の列のマーケット名を、この別のワークシートにあるそれぞれのティッカーに置き換える必要がありますが、同じ Excel ファイルにあります。

たとえば、「CANADIAN DOLLAR - CHICAGO MERCANTILE EXCHANGE」のすべてのセルを「CAD」に置き換え、すべての「SWISS FRAN - CHICAGO MERCANTILE EXCHANGE」のセルを「SWF」に置き換えるなどです。

名前が Excel ファイル内で同じままで、テキスト ファイルに転送したときにのみ変更されることを希望します。ただし、それが難しい場合は必須ではありません。

参考までに、テキスト ファイルへの書き込みに使用しているコードを次に示します。

Sub getData1()
On Error GoTo ErrHandler:
''Finding Row Information
Dim Ticker As String
Dim rCount As Integer, i As Integer, j As Integer, rcCount As Integer, rowStr As String
rCount = Application.CountA([RDRows])
rcCount = Application.CountA([RDCols])
Myfile = "H:\wkoorbusch\Desktop\" & "CFTC_Fin_Data.txt"

Dim fnum As Integer
fnum = FreeFile
Open Myfile For Output As fnum
For i = 1 To rCount
    For j = 1 To rcCount
        rowStr = [Start].Offset(i, 0).Value & "," & [Start].Offset(0, j).Value _
        & "," & Format([Start].Offset(i, 2).Value, _
        "mm/dd/yyyy") & "," & [Start].Offset(i, j).Value
        Print #fnum, rowStr
    Next j
Next i
Close fnum
Exit Sub

ErrHandler:
    Close fnum
End Sub

あらゆる助けを前もって感謝します。

4

1 に答える 1

1

テキストとその置換をスプレッドシートの 2 列に配置してから、

On Error Resume Next
Application.WorksheetFunction.VLookup(MyText,range("Sheet1!A1:B300"),2,False)
If Err.Number=1004 then msgbox "Value " & MyText & " not found"

置換テキストを返します。ルックアップ値が見つからない場合、トラップ可能な err.Number 1004 が返されます。

VLOOKUP(スプレッドシートの数式と機能的に同等)

于 2012-06-03T04:03:18.657 に答える