如果条件匹配,则将excel vba复制/粘贴数据 [英] excel vba to copy/paste data fron another sheet if conditions match

查看:349
本文介绍了如果条件匹配,则将excel vba复制/粘贴数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

表saskaita faktura
表格darbinis

跳转在这里找到帮助。使用条件无法从一张纸到另一张纸上获取数据。
我的问题:
我将使用示例:
如果sheet1单元格d22 = sheet2列B单元格3(4; 5; 6; ..),然后
sheet1单元格P3数据复制并粘贴到sheet2列C单元格3(4; 5; 6; ..)

hopping to find help here. Can't get data from one sheet to another using conditions. My question: I will use example : if sheet1 cell d22 = sheet2 column B cells 3(4;5;6;..), then sheet1 cell P3 data copy and paste to sheet2 column C cells 3(4;5;6;..)

如果我点击按钮,这将发生。

this should happen if i click button.

提前谢谢。
Darius

Thank you in advance. Darius

添加代码:

Sub bandymas()

If Sheets("Sàskaita-Faktûra").Range("d22") = Sheets("Darbinis").Range("D:D") Then
Sheets("Sàskaita-Faktûra").Range("P3").Copy
Sheets("Darbinis").Range ("O:O")
PasteSpecial Paste:=xlPaste, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    End If

End Sub 


推荐答案

我找到一个解决方案,代码看起来:

I found a solution, code looks:

Private Sub CommandButton2_Click()

Range("P3").Select
    Selection.Copy
    Range("P5").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

lastrow = Sheets("Darbinis").Cells(Sheets("Darbinis").Rows.Count, "D").End(xlUp).Row
Dim i
i = 0
For Each c In Sheets("Darbinis").Range("D1:D" & lastrow)
    i = i + 1
        If Sheets("Sàskaita-Faktûra").Range("d22") = c Then
       Sheets("Darbinis").Range("O" & i) = Sheets("Sàskaita-Faktûra").Range("P5").Value
    End If
Next
End Sub

然后它工作,因为它支持。

then it work as it suposed.

这篇关于如果条件匹配,则将excel vba复制/粘贴数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆