例如以下代碼:
dim s as string="$A$1,$B$4,$F$3,$G$7"
想把例如“1”,“2”,“3”,“4”賦給這個range,想通過陣列直接賦值,而不通過回圈,如何實作?
xlsheet.Range(s).Value=https://bbs.csdn.net/topics/?
uj5u.com熱心網友回復:
直接 = 就行了uj5u.com熱心網友回復:
具體怎么操作啊,我無論將這幾個字串“1”,“2”,“3”,“4”定義成陣列,賦值,"$A$1,$B$4,$F$3,$G$7"這幾個單元格顯示的都是陣列首地址的值“1”啊。uj5u.com熱心網友回復:
dim Range=sheet1.range(s(0))
Range=range.next.next
這就跳了,用遞回就可以了
uj5u.com熱心網友回復:
大神,沒看懂您寫的,能寫的在具體些嗎?uj5u.com熱心網友回復:
樓上各位意思就是對range賦值,這是操作excel的標準做法。。。記得,好像,大概,可能……直接對左上角第一個單元格賦值也可以來著。。。
uj5u.com熱心網友回復:
我要賦值的內容有幾萬條資料(從幾十萬資料中篩選出來),如果一個一個單元格range賦值的話,我試了下需要10多分鐘,速度太慢了,如果將這些資料不過單元格,就當是矩形區域,直接range賦值的話,只需0.5分鐘,所以我想這種跳單元格的能不能直接一下子全賦值,不然一個個賦值,太慢了。uj5u.com熱心網友回復:
大神快出現~~~uj5u.com熱心網友回復:
大神快出現~~~uj5u.com熱心網友回復:
陣列批量賦值,我現在都是通過二維陣列將1234放入二維陣列,其中一個維度自然是0,這樣你寫資料,既可以橫著賦值,也可以豎著賦值。
range.Resize[陣列rowscount,陣列 Columnscount] = Array
完成
我都是這么做的,
幾萬多個數值 秒秒鐘完成
uj5u.com熱心網友回復:
用插入陣列的方法試試
Imports Spire.Xls
Namespace Insert2DArray
Class Program
Shared Sub Main(ByVal args() As String)
Dim wb As Workbook = New Workbook()
Dim sheet As Worksheet = wb.Worksheets(0)
Dim twoDimensionalArray(,) As Object = New String(,) {
{"a1", "b1", "c1", "d1"},
{"a2", "b2", "c2", "d2"},
{"a3", "b3", "c3", "d3"},
{"a4", "b4", "c4", "d4"}
}
sheet.InsertArray(twoDimensionalArray,1,1)
wb.SaveToFile("InsertArray.xlsx",ExcelVersion.Version2016)
End Sub
End Class
End Namespace
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/69571.html
標籤:VB.NET
下一篇:【求助大佬】
