땡큐엑셀vba & 엑셀매크로

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목 적
'1) 셀값을 삭제해 봅니다.
'2) 셀을 밀면서(Shift) 삭제해 봅니다.
'셀값 삭제와 Shift하며 삭제하는 방법을 배워봅니다.

Sub 셀삭제_Shift()

    MsgBox "C1,C2,C3셀을 삭제합니다. D,E열이 왼쪽으로 당겨집니다.(ShiftToLeft)"
    Cells(1, "C").Delete shift:=xlShiftToLeft
    Cells(2, "C").Delete shift:=xlShiftToLeft
    Cells(3, "C").Delete shift:=xlShiftToLeft

    MsgBox "A4,B4,C4셀을 삭제합니다. 아래의 셀들이 위로 당겨집니다.(ShiftUp)"
    Cells(4, "a").Delete shift:=xlShiftUp
    Cells(4, "b").Delete shift:=xlShiftUp
    Cells(4, "c").Delete shift:=xlShiftUp

    MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
End Sub



Sub 셀삭제_Shift2()

    MsgBox "C1,C2,C3셀값만을 삭제합니다.", vbInformation, "땡큐엑셀vba & 엑셀매크로"
    Cells(1, "C").ClearContents
    Cells(2, "C").ClearContents
    Cells(3, "C").ClearContents

    MsgBox "C1,C2,C3셀에 값을 입력합니다.", vbInformation, "땡큐엑셀vba & 엑셀매크로"
    Cells(1, "C") = "c"
    Cells(2, "C") = "c"
    Cells(3, "C") = "c"

    MsgBox "C1,C2,C3셀을 삭제합니다. 오른쪽의 셀들이 왼쪽으로 당겨집니다.(ShiftToLeft)", vbInformation, "땡큐엑셀vba & 엑셀매크로"
    Cells(1, "C").Delete shift:=xlShiftToLeft
    Cells(2, "C").Delete shift:=xlShiftToLeft
    Cells(3, "C").Delete shift:=xlShiftToLeft

    MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
    
End Sub

 

셀_삭제(Shift)-땡큐엑셀vba.xlsm
0.02MB

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목 적
'1) 여러시트의 셀에 값을 입력해 봅니다.
'2) 현재 보이는(Active)시트의 셀에 값을 입력해 봅니다.
' Sheets(시트명).cells(행,열)의 형식으로 다른 시트에 값을 입력할수 있습니다.


Sub 여러시트의셀에값입력()
    'Sheet1의 A1셀에 값입력
    Sheets("Sheet1").Cells(1, "A") = "Sheet1입니다"
    
    'Sheet2의 A1셀에 값입력
    Sheets("Sheet2").Cells(1, "A") = "Sheet2입니다"
    
    'Sheet3의 A1셀에 값입력
    Sheets("Sheet3").Cells(1, "A") = "Sheet3입니다"

     MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
End Sub


Sub 여러시트의셀에값입력2()
    '현재 보이는(Active)시트의 A3셀에 값입력
    Cells(3, "A") = "안녕하세요. 땡큐엑셀입니다."

    'Sheet1의 A4셀에 값입력
    Sheets("Sheet1").Cells(4, "A") = "Sheet1. 만나서 반갑습니다."
    
    'Sheet2의 A4셀에 값입력
    Sheets("Sheet2").Cells(4, "A") = "Sheet2. 만나서 반갑습니다."
    
    'Sheet3의 A4셀에 값입력
    Sheets("Sheet3").Cells(4, "A") = "Sheet3. 만나서 반갑습니다."

     MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
End Sub

 

 

 

 

sheet1

 

sheet2

 

sheet3

 

 

셀_여러시트에입력-땡큐엑셀vba.xlsm
0.02MB

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목 적
'1) 셀을 다른 위치로 이동(cut)하는 방법에 대해 알아봅니다.
'2) 셀을 다른 위치로 복사(copy)하는 방법에 대해 알아봅니다.
'* 셀의 복사와 이동에 대해 알아봅니다.


Sub 셀이동()

    MsgBox "A1:A5셀을 B1:B5셀로 이동합니다."
    
    'A1셀을 B1셀로 이동
    Cells(1, "A").Cut Destination:=Cells(1, "B")
    
    'A1셀을 B1셀로 이동
    Cells(2, "A").Cut Destination:=Cells(2, "B")
    
    'A1셀을 B1셀로 이동
    Cells(3, "A").Cut (Cells(3, "B"))
    
    'A1셀을 B1셀로 이동
    Cells(4, "A").Cut Destination:=Cells(4, "B")
    
    'A1셀을 B1셀로 이동
    Cells(5, "A").Cut Destination:=Cells(5, "B")
    
     MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
    
End Sub



Sub 셀이동2()

    MsgBox "A11:A17셀을 B11:B17셀로 이동합니다."
    
    'a11셀을 b11셀로 이동
    Cells(11, "A").Cut Destination:=Cells(11, "B")
    'a12셀을 b12셀로 이동
    Cells(12, "A").Cut Destination:=Cells(12, "B")
    
    'a13셀을 b13셀로 복사
    Cells(13, "A").Copy Destination:=Cells(13, "B")
    
    'a14셀을 b14셀로 이동
    Cells(14, "A").Cut Destination:=Cells(14, "B")
    'a15셀을 b15셀로 이동
    Cells(15, "A").Cut Destination:=Cells(15, "B")
    
    'a16셀에 수식입력
    Cells(16, "A") = "=SUM(1+2+3+4+5+6+7+8+9+10)"
    'a16셀을 b16셀로 이동
    Cells(16, "A").Cut Destination:=Cells(16, "B")
    
    'a17셀에 수식입력
    Cells(17, "A") = "=SUM(1+2+3+4+5+6+7+8+9+10)"
    'a17셀을 b17셀로 복사
    Cells(17, "A").Copy Destination:=Cells(17, "B")
    
    
     MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
    
End Sub

 

 

이동전

 

 

이동후

 

셀_복사와이동-땡큐엑셀vba.xlsm
0.05MB

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목 적
'1) 여러시트에 있는 셀값을 msgbox를 이용해 출력해 봅니다.


Sub 여러시트에있는셀값출력()

    'Sheet1의 A1셀
    MsgBox Sheets("Sheet1").Cells(1, "A")
    
    'Sheet2의 A1셀
    MsgBox Sheets("Sheet2").Cells(1, "A")
    
    'Sheet3의 A1셀
    MsgBox Sheets("Sheet3").Cells(1, "A")
    

    MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
End Sub

 

 

sheet1

 

sheet2

 

sheet3

 

 

sheet1의 a1셀 출력

 

sheet2의 a1셀 출력

 

sheet3의 a1셀 출력

 

 

셀_여러시트에 있는 셀값출력-땡큐엑셀vba.xlsm
0.02MB

 

'작성자 : 땡큐엑셀vba & 엑셀매크로 
'목 적 
'1) 셀값을 msgbox를 이용해 출력해 봅니다. 
'2) 여러셀값을 하나의 셀로 출력해 봅니다. 

Sub 셀내용출력() 
      'a1셀값과 a2셀값 a3셀값을 연결하여 메시지박스에 출력 
      MsgBox Cells(1, "A") & Cells(2, "A") & Cells(3, "A") 
       
      'a1셀값 a2셀값,a3셀값을 연결하여 a5셀에 출력 
      Cells(5, "A") = Cells(1, "A") & Cells(2, "A") & Cells(3, "A") 
       
      '사이사이에 공백을 두어 a1셀값 a2셀값 a3셀값을 연결하여 a6셀에 출력 
      Cells(6, "A") = Cells(1, "A") & " " & Cells(2, "A") & " " & Cells(3, "A") 
       
      MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로" 
End Sub 

 

 

 

셀_내용출력-땡큐엑셀vba.xlsm
0.02MB

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목  적
'1) 셀을 다른셀로 복사해 봅니다.
'2) 값복사,수식복사의 차이를 알아봅니다.


Sub 셀복사()

    MsgBox "A1:A5셀을 B1:B5셀로 복사합니다."
    
    'A1셀을 B1셀로 복사
    Cells(1, "A").Copy Destination:=Cells(1, "B")
    
    'A2셀을 B2셀로 복사
    Cells(2, "A").Copy Destination:=Cells(2, "B")
    
    'A3셀을 B3셀로 복사
    Cells(3, "A").Copy (Cells(3, "B"))
    
    'A4셀을 B4셀로 복사
    Cells(4, "A").Copy Destination:=Cells(4, "B")
    
    'A5셀을 B5셀로 복사
    Cells(5, "A").Copy Destination:=Cells(5, "B")
    
    MsgBox "완료되었습니다."
    
End Sub


Sub 셀복사2()

    MsgBox "A11:A17셀을 B11:B17셀로 복사합니다."
    
    Cells(11, "A").Copy Destination:=Cells(11, "B")
    Cells(12, "A").Copy Destination:=Cells(12, "B")
    Cells(13, "B") = Cells(13, "A")
    
    Cells(14, "A").Copy Destination:=Cells(14, "B")
    Cells(15, "A").Copy Destination:=Cells(15, "B")
    
    Cells(16, "A") = "=SUM(1+2+3+4+5+6+7+8+9+10)"
    'A16셀의 수식이 B16셀에 복사됩니다.
    Cells(16, "A").Copy Destination:=Cells(16, "B") '수식복사 할때
    
    Cells(17, "A") = "=SUM(1+2+3+4+5+6+7+8+9+10)"
    'A17셀의 값이 B17셀에 복사됩니다.
    Cells(17, "B") = Cells(17, "A") '값복사할때
    
    '수식복사인지 값복사인지 확인해 보세요
    
    
    MsgBox "완료되었습니다."
    
End Sub

 

 

 

 

 

 

수식복사

 

 

값복사

 

 

 

셀_복사-땡큐엑셀vba.xlsm
0.05MB

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목  적
'1) 셀에 수식또는 함수를 입력해 봅니다.


Sub 셀에수식입력()

    'A1셀에 1+1 수식입력
    Cells(1, "A") = "=1+1"
    
    'A2셀에 현재시각 입력
    Cells(2, "A") = "=now()"
    
    'A3셀에 오늘날짜 입력
    Cells(3, "A") = "=today()"

    MsgBox "완료되었습니다."
End Sub




Sub 셀에수식입력2()

    Cells(1, "A") = "=1+1"
    Cells(2, "A") = "=now()"
    Cells(3, "A") = "=today()"


    'B1셀에 A1셀값과 설명문장결합한값 입력
    Cells(1, "B") = "합계는 " & Cells(1, "A") & " 입니다"
    
    'B2셀에 A2셀값과 설명문장 결합한값 입력
    Cells(2, "B") = "현재시간은 " & Cells(2, "A") & " 입니다"
    
    'B3셀에 A3셀값과 구성문장 결합한값 입력
    Cells(3, "B") = "오늘날짜는 " & Cells(3, "A") & " 입니다"

    MsgBox "완료되었습니다."
    
End Sub

 

 

 

"셀에 수식입력" 도형 > 마우스 우클릭> 매크로 지정> 셀에 수식입력 프로시저 선택

"셀에 수식입력2" 도형 > 마우스 우클릭> 매크로 지정> 셀에 수식입력2 프로시저 선택

 

 

 

 

 

셀_수식입력-땡큐엑셀vba.xlsm
0.02MB

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목  적
'1) 셀을 선택하는 방법을 알아봅니다.
'2) Offset을 이용하여 셀을 선택하는 방법을 알아봅니다.



Sub offset을이용한셀선택()

    MsgBox "[C10]셀을 선택합니다."
    'C10셀 선택
    Cells(10, "C").Select
    
    MsgBox "[C10]을 기준으로 왼쪽으로 한칸 이동합니다."
    'C10셀에서 왼쪽으로 한칸 이동
    'OFFSET(행,열)을 의미합니다.
    '열이 마이너스값일때는 왼쪽으로, 플러스값일때는 오른쪽으로 이동
    Cells(10, "C").Offset(0, -1).Select
    
    MsgBox "[C10]을 기준으로 오른쪽으로 한칸 이동합니다."
    Cells(10, "C").Offset(0, 1).Select
    
    MsgBox "[C10]을 기준으로 위로 한칸 이동합니다."
    'C10셀에서 위쪽으로 한칸 이동
    'OFFSET(행,열)을 의미합니다.
    '행이 마이너스값일때는 위쪽으로, 플러스값일때는 아랫쪽으로 이동
    Cells(10, "C").Offset(-1, 0).Select
    
    MsgBox "[C10]을 기준으로 아래로 한칸 이동합니다."
    Cells(10, "C").Offset(1, 0).Select
    
    
    
    MsgBox "완료되었습니다."
    
End Sub



Sub offset을이용한셀선택2()


    MsgBox "[F10]셀을 선택합니다."
    Cells(10, "F").Select
    
    MsgBox "왼쪽으로 5칸 이동합니다."
    'ActiveCell은 활성화된 셀을 의미합니다.
    '즉 활성화된셀에서 왼쪽으로 5칸
    ActiveCell.Offset(0, -5).Select
    
    MsgBox "오른쪽으로 5칸 이동합니다."
    ActiveCell.Offset(0, 5).Select
    
    MsgBox "위로 5칸 이동합니다."
    'ActiveCell은 활성화된 셀을 의미합니다.
    '즉 활성화된셀에서 위쪽으로 5칸
    ActiveCell.Offset(-5, 0).Select
    
    MsgBox "아래로 5칸 이동합니다."
    ActiveCell.Offset(5, 0).Select
    
    
    MsgBox "완료되었습니다."
    
    
    
End Sub

 

 

 

 

 

 

셀_선택2_offset-땡큐엑셀vba.xlsm
0.05MB

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목  적
'1) 셀에 값 또는 함수를 입력해 봅니다.
'2) 셀의 내용을 지워봅니다.


Sub 셀내용지우기()
    'A1셀에 문자입력
    Cells(1, "A") = "땡큐엑셀입니다."
    
    'A2셀에 오늘날짜 입력
    Cells(2, "A") = "=today()"

    MsgBox "A1셀을 지웁니다."
    'A1셀 내용지우기
    Cells(1, "A") = ""
   'Cells(1,"A").ClearContents '동일하게 내용을 지움

    MsgBox "A2셀을 지웁니다."
    'A2셀 내용지우기
    Cells(2, "A") = ""
   'Cells(2,"A").ClearContents '동일하게 내용을 지움

End Sub




Sub 셀내용지우기2()

    'B1셀에 1입력
    Cells(1, "B") = 1
    Cells(2, "B") = 2
    Cells(3, "B") = 3
    Cells(4, "B") = 4
    Cells(5, "B") = 5
    Cells(6, "B") = 6
    Cells(7, "B") = 7
    Cells(8, "B") = 8
    Cells(9, "B") = 9
    'B10셀에 10입력
    Cells(10, "B") = 10
    
    'B11셀에 B1:B10까지의 합계 함수 입력
    Cells(11, "B") = "=sum(B1:B10)"
    
    'B12셀에 B11셀의 값과 내용 입력
    Cells(12, "B") = "합계는 " & Cells(11, "B") & " 입니다."
    
    MsgBox "합계는 " & Cells(11, "B") & " 입니다"

    MsgBox "B12셀을 지웁니다"
    
    'B12셀 내용지우기
    Cells(12, "B").ClearContents

End Sub

 

 

 

셀_내용지우기-땡큐엑셀vba.xlsm
0.02MB

'작성자 : 땡큐엑셀vba & 엑셀매크로
'목  적
'1) 셀을 선택해봅니다.
'2) 셀에 값을 입력해 봅니다.


Sub 셀선택()

    MsgBox "[A1]셀을 선택합니다."
    'A1셀 선택
    Cells(1, "A").Select
    
    MsgBox "[A2]셀을 선택합니다."
    'A2셀 선택
    Cells(2, "A").Select
    
    MsgBox "[A3]셀을 선택합니다."
    'A3셀 선택
    Cells(3, "A").Select
    
    MsgBox "[B10]셀을 선택합니다."
    'B10셀 선택
    Cells(10, "B").Select
    
    MsgBox "[C15]셀을 선택합니다."
    'C15셀 선택
    Cells(15, "C").Select
    
    
    
    MsgBox "완료되었습니다."
    
End Sub


Sub 셀선택2()

    MsgBox "[A1]셀을 선택합니다."
    
    'A1셀 선택
    Cells(1, "A").Select
    MsgBox "[A1]셀에 값을 입력합니다."
    
    '현재 활성화된 셀(ActiveCell)에 값 입력
    ActiveCell = "안녕하세요"
    
    MsgBox "[A2]셀을 선택합니다."
    'A2셀 선택
    Cells(2, "A").Select
    MsgBox "[A2]셀에 값을 입력합니다."
    'A2셀에 값입력
    Cells(2, "A") = "땡큐엑셀입니다."
    
    
    MsgBox "[B3]셀에 값을 입력합니다."
    'B3셀에 값입력
    Cells(3, "B") = "[B3]셀입니다."
    
    MsgBox "[B3]셀을 선택합니다."
    'B3셀 선택
    Cells(3, "B").Select
    
    
    MsgBox "완료되었습니다."
    
End Sub

 

셀_선택-땡큐엑셀vba.xlsm
0.05MB