한 셀에서 잘라내어 다른 셀에 붙여넣는 Excel VBA 코드

한 셀에서 잘라내어 다른 셀에 붙여넣는 Excel VBA 코드

VBA를 사용하여 Excel에서 "H" 열의 "0"보다 큰 셀을 복사하고 해당 내용을 "G" 열의 셀에 붙여넣는 코드를 설정하려고 합니다. 예를 들어, "H2"가 "0"보다 크면 잘라내어 "G2"에 붙여넣는 식입니다. 나는 작동 할 아무것도 찾을 수없는 것 같습니다. 어떤 도움이라도 대단히 감사하겠습니다.

답변1

VBA를 사용하여 붙여넣기를 복사하려면 다음을 참조하세요.

Sub Copy_paste()
    ThisWorkbook.Sheets("Sheet1").Range("A1").Copy
    ThisWorkbook.Sheets("Sheet1").Range("B1").Select
    ThisWorkbook.Sheets("Sheet1").Paste
End Sub

매우 간단해야 하지만 "A1"에 있는 항목은 복사할 소스이고 "B1"에 있는 항목은 대상입니다. 그런데자르다대신에복사, 대신 .Copy를 .Cut으로 바꾸십시오.

이상 등의 논리에 관해서는 위에서 보여준 복사/붙여넣기 방법 주위에 몇 가지 논리 연산자를 추가하기만 하면 됩니다. 예를 들어 A1이 2보다 큰 경우 A1을 B1에 복사하려면 다음을 수행합니다.

Sub Copy_paste()
    If ThisWorkbook.Sheets("Sheet1").Range("A1") > 2 Then
        ThisWorkbook.Sheets("Sheet1").Range("A1").Copy
        ThisWorkbook.Sheets("Sheet1").Range("B1").Select
        ThisWorkbook.Sheets("Sheet1").Paste
    End If
End Sub

메모

또한 다양한 방법으로 셀을 참조할 수 있습니다. 동일한 통합 문서 내에서 모든 일이 발생하는 경우 다음은 모두 동의어입니다.

  • ThisWorkbook.Sheets("Sheet1").Range("A1")
  • 범위("'시트1'!A1")
  • ThisWorkbook.Sheets("Sheet1").Cells(1,1)
  • 시트("시트1").셀(1,1)
  • 시트("시트1").Range("A1")

관련 정보