0
我搜索了這個問題的答案,但它似乎是人們回答它的唯一方法,就是使用Excel函數。我在Excel中有一個文件加載到一個文本文件中,但每週都會有新的數據出來。我需要用第一列中的市場名稱替換它們各自的代碼,這些代碼在this單獨的工作表中,但在同一個Excel文件中。如何用ID使用VBA替換字符串?
例如,我想所有「加元 - 芝加哥商品交易所」 - 與「SWF」被替換細胞等
與「CAD」,所有「芝加哥商品交易所瑞士法郎」來代替,細胞我寧願如果名稱在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
預先感謝任何及所有的幫助。
兩件事。 1)你爲什麼使用循環來寫入文本文件? Excel可以將'SaveAs'作爲文本文件。您只需將相關格式的數據設置爲新表格,然後將該表格直接保存爲文本文件。這將是非常快的。 2)您可以使用VBA中的'Vlookup'或使用'.FIND'和'.FINDNEXT'來代替'Vlookup'來查找和替換這些單詞。請參閱此鏈接第4節http://siddharthrout.wordpress.com/2011/07/14/find-and-findnext-in-excel-vba/ –
我不使用'SaveAs'的原因是因爲我正在重新格式化數據出來後,每一條數據都作爲自己的行,而不是包含單個日期+索引組合的每一位數據的巨大行。這些文本文件然後使用SQL以這種格式寫入我們的數據庫。 – weskpga
公平足夠:)你有沒有看到第二點? –