如何对EXCEL中跳单元格的range赋值?

zhxbkofkyo 2019-12-24 11:35:11
例如以下代码:
dim s as string="$A$1,$B$4,$F$3,$G$7"
想把例如“1”,“2”,“3”,“4”赋给这个range,想通过数组直接赋值,而不通过循环,如何实现?
xlsheet.Range(s).Value=?
...全文
521 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_44083805 2020-02-21
  • 打赏
  • 举报
回复
数组批量赋值,我现在都是通过二维数组
将1234放入二维数组,其中一个维度自然是0,这样你写数据,既可以横着赋值,也可以竖着赋值。
range.Resize[数组rowscount,数组 Columnscount] = Array

完成

我都是这么做的,

几万多个数值 秒秒钟完成
Tmac_Zheng 2020-02-21
  • 打赏
  • 举报
回复
用插入数组的方法试试


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
zhxbkofkyo 2020-01-13
  • 打赏
  • 举报
回复
大神快出现~~~
zhxbkofkyo 2020-01-09
  • 打赏
  • 举报
回复
大神快出现~~~
zhxbkofkyo 2020-01-06
  • 打赏
  • 举报
回复
我要赋值的内容有几万条数据(从几十万数据中筛选出来),如果一个一个单元格range赋值的话,我试了下需要10多分钟,速度太慢了,如果将这些数据不过单元格,就当是矩形区域,直接range赋值的话,只需0.5分钟,所以我想这种跳单元格的能不能直接一下子全赋值,不然一个个赋值,太慢了。
清晨曦月 元老 2020-01-04
  • 打赏
  • 举报
回复
楼上各位意思就是对range赋值,这是操作excel的标准做法。。

。记得,好像,大概,可能……直接对左上角第一个单元格赋值也可以来着。。。
zhxbkofkyo 2020-01-03
  • 打赏
  • 举报
回复
大神,没看懂您写的,能写的在具体些吗?
jhonsonzhang 2019-12-31
  • 打赏
  • 举报
回复
dim Range=sheet1.range(s(0)) Range=range.next.next 这就跳了,用递归就可以了
zhxbkofkyo 2019-12-31
  • 打赏
  • 举报
回复
具体怎么操作啊,我无论将这几个字符串“1”,“2”,“3”,“4”定义成数组,赋值,"$A$1,$B$4,$F$3,$G$7"这几个单元格显示的都是数组首地址的值“1”啊。
lxjwxy 2019-12-29
  • 打赏
  • 举报
回复
直接 = 就行了

16,721

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧