繁体   English   中英

根据单元格值复制行并粘贴到新工作表上

[英]Copy rows based on cell value and paste on a new sheet

检查这个

在此处输入图片说明

我需要帮助。 仅当 C 列中的值 > 0 时,我才想将整个单元格从工作表名称“组件”复制到新工作表名称“加载列表”

有人可以给我这个宏代码吗?

在您的新工作表上,您可以将此条件添加到单元格或单元格范围:

=IF(组件!C5>0,组件!A5)

其中 C5 具有要比较的值,如果条件发生,A5 具有值副本。

就在我的挥杆中!

@sweetkaos 给出的公式可以正常工作,以防您想复制数据,因为它没有找到数据的空白。

我会想象一个稍微复杂的情况。 我假设您只需要下一种格式的一行,如图所示。

还方便地假设以下内容: a. 两个工作表都有固定的列表 b 的起点。 2 列列表 - 要复制和粘贴,第二列的值为 c。 连续,不中断源列表 d. vba的基础知识,所以你可以重组代码

这是代码。 请尝试逐行理解它。 快乐卓越!

Sub populateLoadList()    
'declaring range type variables
Dim rngStartFirstList As Range, rngStartLoadList As Range

'setting values to the range variables
'you must change the names of the sheets and A1 to the correct starts of your two lists

Set rngStartFirstList = Worksheets("Name_of_your_fist_sheet").Range("A1")

Set rngStartLoadList = Worksheets("Name_of_your_second_sheet").Range("A1")


Do While rngStartFirstList.Value <> ""
  If rngStartFirstList.Offset(1, 0).Value < 0 Then

     Range(rngStartFirstList, rngStartFirstList.Offset(0, 1)).Copy      

     rngStartLoadList.PasteSpecial xlPasteValues

     Application.CutCopyMode = False

     Set rngStartLoadList = rngStartLoadList.Offset(1, 0)

   End If

   Set rngStartFirstList = rngStartFirstList.Offset(1, 0)

Loop
End Sub

基本上我想要的是......如果 C 上的值 >0 我想要整个第 10 列复制到那个新工作表......不仅仅是那个单元格

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM