본문 바로가기

컴퓨터 과학 & 영상처리 관련/VBA / 엑셀 함수

엑셀 vba 글쓰면 옆에 자동으로 날짜 띄우기

Private Sub Worksheet_Change(ByVal Target As Range)
    For x = 0 To Target.Count - 1
    If Target.Column = 1 And Target.Row <> 1 Then
        Cells(Target.Row + x, 3).Value = Date
    End If
    Next
End Sub

 

워크시트가 변화되면 그 변화된 부분이 A열 이라면 날짜를 적는거...

근데 Target.Count는 셀이 여러개일 수가 있으니깐 저렇게 한거..

삭제할때도 저게 실행되서 디버깅을 한 30분 함

비쥬얼 스튜디오 처럼 편하긴 한데..

if문에서 내 생각되로 비교가 안되서 골치

!= 가 <>로 되서 Null이 아니면..아니면 비교해서 안맞으면 if문 안으로 들어가야되는데 먼가 잘 안맞네

공부를 더 해야겠지

 

If Cells(i_for, 4).Value < 30 And alarmCheckVar2 > 2 Then
        If Cells(i_for, 4).Value > 0 Then

이렇게 if문을 중첩해서 쓰면 같이 쓸때랑 다르게 되는 경우가 있네...

조건 여러개 넣지 말자

 

 

 

 

f9로 중단점

f8로 한줄씩 실행.편하다

지역변수 보기도 좋고