我有一些數據,我通過VBA宏從幾個Oracle數據庫轉移到Excel中。一些列有數據(數字),afaik,以文本形式存儲。我需要將這些「錯誤」格式化的數據轉換爲數字,以便我可以對它進行計算,但是我無法弄清楚如何有效地使用VBA來實現這一點。此外,只有部分數據以文本形式存儲(列K-Q格式不正確,請參見下圖)。將存儲爲文本的數據轉換爲數字(Oracle SQL)
目前即時通訊使用這個循環將數據轉換:
Sub convertTextToNumbers(ByVal sColumnHeader As String)
Dim col As Range, c As Range
Dim colIndexNumber As Integer, lastUsedRow As Integer
colIndexNumber = findColumnIndexNumber(sColumnHeader)
lastUsedRow = ActiveSheet.Cells(Rows.Count, colIndexNumber).End(xlUp).Row
Set col = Range(Cells(2, colIndexNumber), Cells(lastUsedRow, colIndexNumber))
For Each c In col
c.Value = c.Value
Next c
End Sub
這是做的最有效的方法是什麼?我可以使用SQL進行轉換嗎?使用SQL查詢即可:
SELECT * FROM table_name
另外通過選擇另一種格式轉換不起作用。
謝謝!
數據錯誤格式化爲列K-問:在列
使用to_number sql函數轉換所需的列。 – OldProgrammer
只是想知道爲什麼你不建立一個ODBC連接並在Excel中使用它? – user206168
K-N中的格式應該是什麼? – MatthewD