excel - 我可以添加什么 VBA 代码以便粘贴到下一个空白行而不是复制数据?
问题描述
这是用于复制 Z4:Z11 然后将其粘贴到一行中的代码。但是,当我再次运行它时,它只是粘贴在当前数据上,我想将它运行到下一行。
Sub SaveLineup()
'
' SaveLineup Macro
'
'
Range("Z4:Z11").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Range("A3").Select
Sheets("Sheet1").Select
Application.CutCopyMode = False
Range("Z13").Select
End Sub
解决方案
尝试这个:
Option Explicit
Sub Test()
Dim sht As Worksheet, sht2 As Worksheet, lastrow As Long
Set sht = Worksheets("Sheet1")
Set sht2 = Worksheets("Sheet2")
lastrow = sht2.Cells(sht2.Rows.Count, 1).End(xlUp).Row + 1
sht2.Range(sht2.Cells(lastrow, 1), sht2.Cells(lastrow + 7, 1)).Value = _
sht.Range(sht.Cells(4, 26), sht.Cells(11, 26)).Value
End Sub
推荐阅读
- python - OpenCV 没有 drawKeypoints 函数
- javascript - 在 jsx 中使用 () => vs this.something
- sql-server - 为什么迁移后 SSIS 包会因签名无效而失败?
- parallel-processing - 为什么具有单个生产者/消费者的生产者消费者队列不需要互斥锁?
- android - 检查 Firebase 中是否存在值
- python - Scrapy 链接已抓取但未抓取
- sql - BEGIN 和 END 中的 SQL UPDATE
- android - 从自己的服务器更新 android 应用程序 [Android]
- unix - 使用 SED、ECHO 和 C++FILT 去除 txt 文件中的所有 c++ 符号
- c# - C#/Unity - 如何只获取不同的值(带阈值)和特定的计数?