永发信息网

如何在VB中copy Excel中的某一列的值

答案:5  悬赏:0  手机版
解决时间 2021-01-25 02:27
  • 提问者网友:半生酒醒
  • 2021-01-24 06:36
如何在VB中copy Excel中的某一列的值
例如,
for i = 3 to 20
' 这里要写copy第i列的整列的值的代码,注意是列的不是行的哦
' 这里写粘贴的代码,粘贴到另外一个sheet里面去
next i

求高手赐教,如对我有帮助我会追加悬赏再采纳的
最佳答案
  • 五星知识达人网友:神也偏爱
  • 2021-01-24 07:18
您好,我这代码只提供参考,具体你根据要求自己编写:
================================================
Sub Copy1()

Dim c As String
Dim p As String

For i = 1 To 3

c = Chr(64 + i) & ":" & Chr(64 + i)
p = Chr(67 + i) & ":" & Chr(67 + i)

Columns(c).Select
Selection.Copy
Sheets("Sheet2").Select
Columns(p).Select
ActiveSheet.Paste
Sheets("Sheet1").Select
Next i

Application.CutCopyMode = False

End Sub
=====================================
※ 提示:Chr(65) = A
※ 本代码只限 A - Z 列 AA后要令编。
全部回答
  • 1楼网友:由着我着迷
  • 2021-01-24 12:37
最简单的是用宏记录,再修改成你要的列数 如果要手动编写的话,我觉得直接赋值方便。
  • 2楼网友:青灯有味
  • 2021-01-24 11:33
3到20是连续的,为何用循环,这会降低运行速度的。复制3到20 on error resume (cells(1,3),cells(65536,21)).select selection.copy '贴到另一表中,比如贴到sheet2中,selection.pastespecialxlpastevalues'换行自己调整一下,我用手机上打的
  • 3楼网友:酒者煙囻
  • 2021-01-24 09:59
Columns(i).Copy 粘贴到另外哪一个sheet的哪里面去?
  • 4楼网友:北城痞子
  • 2021-01-24 08:39
用一句就好了嘛,不需要2句的: sheets("sheet1").range(cells(2,i),cells(x,i)).copy destination:=sheets("sheet2").range("k31") 语句中的x变量指的是sheet1的第i列的最后一行的行号!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯