块引用
您好,我正在尝试将文本格式列的值从工作表 1 复制并粘贴到工作表 2。但是值类型自动更改为数字。
将 wb 变暗为工作簿 将 src 变暗为工作表 将 tgt 变暗为工作表 将 lastRow 变暗为变体
Set wb = ThisWorkbook
Set src = wb.Sheets("sheet1")
Set tgt = wb.Sheets("sheet2")
lastRow = src.Range("A" & src.Rows.Count).End(xlDown).Row
tgt.Range("E43:E" & lastRow).Value = src.Range("A5:A" & lastRow).Value
我用这段代码得到的是
1
2
11
12
数据在 sheet1 中的格式如下:
00000001
00000002
00000011
00000012
我想在第 2 表中做同样的事情
如前所述,您需要重现强制使用源中的前导零的自定义数字格式。
您还需要将目标重塑为与源相同的大小。对两者使用lastRow仅在它们以同一行开头时才有效(您的示例没有)。
Set wb = ThisWorkbook
Set src = wb.Sheets("sheet1")
Set tgt = wb.Sheets("sheet2")
with src
lastRow = .Range("A" & .Rows.Count).End(XLUP).Row '<~~ xlUp, not xlDown
with .Range("A5:A" & lastRow)
tgt.Range("E43").resize(.rows.count, .columns.count) = .Value2
tgt.Range("E43").resize(.rows.count, .columns.count).numberformat = "00000000"
end with
end with
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句