2016-03-13 24 views
0

Sheet saskaita faktura Sheet darbinisExcel VBA中複製/粘貼數據弗朗另一個表,如果條件符合

跳躍到此處獲取幫助。無法使用條件將數據從一張紙張傳送到另一張紙張。 我的問題: 我將使用示例: if sheet1單元格d22 = sheet2列B單元格3(4; 5; 6; ..),然後 sheet1單元格P3數據複製並粘貼到sheet2列C單元格3(4; 5; 6; ..)

這應該發生,如果我點擊按鈕。

預先感謝您。 大流士

添加代碼:

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 
+0

你可以格式化你的代碼:select然後ctrl + k – cutzero

+0

發佈一個真正的嘗試 – cutzero

+0

現在我把數據用手和簡單的語句公式粘貼在符合條件的所有單元格中,用宏我是新的字段。 –

回答

0

P爲源,o是目的地,你可以調整

Sub bandymas() 
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("P3").value 
    endif 
next 
End Sub 
+0

給我一些細節,我將修復上面的函數 – cutzero

+0

有些事情錯了:「dim i = 0」它是紅色的。我如何發送示例工作簿?它會更清晰地顯示我在找什麼。 –

+0

我修好了,我在家裏沒有excel ... – cutzero

0

我找到了解決方法,代碼如下:

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 

然後它按照它的樣子工作。

相關問題