You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

跨工作表传递单元格值:非对齐单元格赋值失败求助

跨工作表非对齐单元格的值传递问题

需求:在Sheet19和Sheet47之间传递单元格值,两个工作表的单元格位置不对齐;此前用冒号指定连续范围能成功传递,但用逗号指定不连续范围时失败,且Sheet19的G76必须保持空白。当前尝试的代码如下:

Sheet19.Range("F76,H76").Value = Sheet47.Range("I3,J3").Value 'To - From

问题原因

用逗号指定的不连续Range区域,直接通过.Value批量赋值时,VBA无法自动匹配两个不连续区域的单元格对应关系,导致赋值失败。

解决方法

方法一:逐个单元格赋值(最直接可靠)

直接分别给每个对应单元格赋值,精准控制目标单元格,同时保证G76保持空白:

Sheet19.Range("F76").Value = Sheet47.Range("I3").Value ' 把Sheet47的I3值传给Sheet19的F76
Sheet19.Range("H76").Value = Sheet47.Range("J3").Value ' 把Sheet47的J3值传给Sheet19的H76

方法二:数组循环批量赋值(适合扩展更多单元格场景)

如果后续需要处理更多不连续单元格,可以将源和目标单元格地址存入数组,循环完成赋值:

Dim sourceAddrs As Variant
Dim targetAddrs As Variant
Dim i As Integer

sourceAddrs = Array("I3", "J3")
targetAddrs = Array("F76", "H76")

For i = LBound(sourceAddrs) To UBound(sourceAddrs)
    Sheet19.Range(targetAddrs(i)).Value = Sheet47.Range(sourceAddrs(i)).Value
Next i

内容的提问来源于stack exchange,提问作者BrentJohn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 22:05:04