[PA] 업무자동화/[XL]Excel & VBA

XL VBA 클립보드 경고 메시지 끄기

Weneedu 2023. 5. 24. 23:59

20230524 1031 
 
REF
[1] "https://stackoverflow.com/questions/5163265/disable-clipboard-prompt-in-excel-vba-on-workbook-close"
Disable clipboard prompt in Excel VBA on workbook close
 
개요
VBA에서 파일을 열고 데이터를 복사하고 붙인 뒤 파일을 닫으면 다음과 같은 메시지가 뜬다.


이거 없애고 싶다.
 
방법1, 클립보드를 이용하지 않는 방법

Sub test()
  zYourFile = "C:\Users\xxxxxxx\Documents\zTemp_20230524.xlsx"
  Set wb2 = Application.Workbooks.Open(zYourFile)
  wb2.Sheets(1).[a1:z1000].Copy ThisWorkbook.Sheets(1).[a1:z1000]
  wb2.Close
End Sub

* 'copy' 를 쓰면 수식, 서식 등이 모두 복사된다. 값만 복사하려면 다른 방법을 써야 한다.


방법2, 경고메시지를 끄는 방법
Application.DisplayAlerts = False

방법3, 값을 입력하는 방법 - 복붙 copy/paste를 사용하지 않고..

range1 = range2 ; range에 range를 바로 입력하는 방법

Sub test1()
  Dim rSrc As Range
  Dim rDst As Range
  
  zYourFile = "C:\Users\xxxxxxx\Documents\zTemp_20230524.xlsx"
  Set wb2 = Application.Workbooks.Open(zYourFile)
  
  Set rSrc = wb2.Sheets(1).[a1:z1000]
  Set rDst = ThisWorkbook.Sheets(1).[a1].Resize(rSrc.Rows.Count, rSrc.Columns.Count)
  rDst = rSrc.Value
End Sub

방법4, CutCopyMode를 끄는 방법
Application.CutCopyMode = False