Programming

공부한 내용을 정리합니다
Programming/Git

git reset HEAD~1 / 가장 최근의 로컬 커밋 제거 방법

가장 최근의 로컬 커밋을 제거하려면 git reset HEAD~1 명령어를 실행하면 된다.구체적으로는 커밋을 취소하고 수정된 파일을 다시 스테이징 영역으로 가져와 이전 상태로 되돌리고 싶을 때 사용할 수 있다.Git Reset : 커밋 제거하기커밋 실수를 한 경우 기본적으로 git reset 명령어를 사용하여 커밋을 제거할 수 있다.이 때, `git branch` 로 현재 작업중인 브랜치가 맞는지 확인한 후 작업한다.git reset HEAD~1 의 의미가장 최근(HEAD~1)의 로컬 커밋을 취소하고 해당 커밋 내용을 워킹 디렉토리로 다시 가져온다.즉, 변경사항은 작업 디렉토리에 남아있긴 하다. (이는 `git status` 로 확인 가능) 주의사항커밋을 제거하면 해당 커밋 이후의 모든 커밋 내용도 함께..

Programming/Git

로컬에서 CLI로 Git 원격 저장소 연결하기 : current branch master has no upstream branch 오류

1. Git 설치 확인먼저 로컬 환경에 Git이 설치되어 있는지 확인합니다. (다음 명령어를 실행하여 Git 버전 확인)git --version2. 원격 저장소 생성Git 원격 저장소를 사용하기 위해서는 GitHub 등의 원격 저장소 호스팅 서비스에 계정을 생성하고 원격 저장소를 생성해야 한다.원격 저장소를 생성한 후, 해당 저장소의 URL을 복사.3. 로컬 프로젝트 디렉토리 이동Git 원격 저장소를 연결하려는 로컬 프로젝트 디렉토리로 이동. cd /path/to/your/project4. Git 원격 저장소 연결다음 명령어를 사용하여 Git 원격 저장소와 로컬 프로젝트를 연결한다.여기서 origin은 원격저장소의 별칭이고, 은 원격 저장소의 URL.git remote add origin reposito..

Programming/VBA

VBA로 다른 시트의 내용 비교하기

한 파일 내 as Worksheets("Sheet1") 로 워크시트를 각각 선언하면 된다. 다른 파일 Dim bookA as Workbook 위와 같이 워크북 변수를 선언해 준 다음 set bookA = Workbooks("firstExcelFile.xlsx") 첫번째 엑셀 파일명을 확장자 포함하여 입력하면 된다. HTML 삽입 미리보기할 수 없는 소스 [VBA] 다른 시트의 내용과 비교하기 이번에 소개해드릴 부분은 시트간 데이터를 비교하는 방법입니다. VBA 로 뭔가를 하게되면서 가장 유용하게 많이 사용하는 것 중 하나죠. 예를 들면 Sheet1 에 어떤 데이터 리스트가 있고 Sheet2 에 diy-dev-design.tistory.com HTML 삽입 미리보기할 수 없는 소스

Programming/VBA

VBA / 메모에만 그림넣기

메모는 .Comment.Shape 으로 컨트롤할 수 있다. fileName = strPath & "\" & rngC.Value & ".jpg" 이런 식으로 strPath에 저장한 폴더 경로 + 셀값.jpg인 경로를 지정해줄 수 있다. HTML 삽입 미리보기할 수 없는 소스 (1359) 메모창에 그림 삽입하기 2 (엑셀 VBA 매크로) 선택한 영역의 파일 이름과 경로내의 그림 이름이 일치 시 각 셀의 메모에 그림을 삽입하는 기능. 기존 메... blog.naver.com (1358) 메모있는 셀에만 그림 삽입하기 (엑셀 VBA 매크로) 앞서 해본 "(1357) 메모창에 그림 삽입하기 1 (http://rosa0189.blog.me/60204696281)" 은 선택영역내의 기... blog.naver.com..

Programming/VBA

VBA로 필터링된 데이터만 지우기

이 코드로 개선한 후 이전의 필터되지 않은 값을 각각 숨겨진 행인지 확인하고 지우는 방식보다 속도가 비약적으로 개선되었습니다. 아무래도 한 행씩 지우는 게 아니라 화면을 한꺼번에 delete 하는 구조라서 그런 듯합니다. Sub 필터된_데이터만_지우기() Dim strToday As String Dim filteredRng As Range Application.DisplayAlerts = False strToday = Format(Now(), "yyyy-mm-dd") Range("F1").CurrentRegion.AutoFilter Field:6, Criteria1:="*" & CStr(strToday) & "*" Range("F1").CurrentRegion.Offset(1).SpecialCells(x..

Programming/VBA

VBA / criteria 변수에 저장된 문자열 다름 조건 걸기

오토필터 criteria는 변수에 저장된 문자열인 경우 그냥 '변수명' 으로는 반영이 되지 않는 문제가 있었습니다. 이 문제를 해결하려면 CStr(변수명)을 사용해야합니다. 그리고 왜인지 모르겠지만 정확히 일치(=)나 다름()은 작동하지 않아서 양쪽에 와일드카드(*)를 붙여주는 '포함' 방식으로 하니 문제가 없었습니다. (관련 링크) HTML 삽입 미리보기할 수 없는 소스 [엑셀 매크로 VBA] CInt, CBool, CStr을 이용하여 값 변환하기 엑셀의 워크시트에는 다양한 데이터형을 지원하기 위한 데이터 타입이 있습니다. 이러한 데이터 타입 사이에서 데이터를 변환하는 방법에 대해서 오늘은 알아보도록 하겠습니다. VBA의 대표적 guslabview.tistory.com HTML 삽입 미리보기할 수 없는..

Programming/VBA

VBA로 필터링 된 이외의 행(숨긴 행) 지우기

오늘 날짜인 행만 남기고 삭제하기 오토필터로 오늘 날짜(텍스트)만 필터링하고 나머지 숨긴 행은 지우는 방식입니다. Sub 오늘날짜만_남기기() Dim strToday As String strToday = Format(Now(), "yyyy-mm-dd") Range("F1").AutoFilter Field:=6, Criteria1:=strToday For i = Rows.Count To 1 Step -1 If Rows(i).EntireRow.Hidden = True Then Rows(i).EntireRow.Delete End If Next i End Sub 숨긴 행인지 확인하고 하나하나 지우는 방식이라 시간이 많이 걸려서 개선하게 되었습니다. 개선한 버전 링크는 이쪽. HTML 삽입 미리보기할 수 없는 소..

Programming/VBA

VBA로 다른 시트 값과 비교해서 일치하는 경우 셀 값 바꾸기

data 시트의 AE셀을 지금 시트의 G셀과 비교해서, 일치하는 경우에만 Q셀 값을 '최종완료'로 바꾸는 VBA Sub 확인완료_갱신() Dim rngList As Range Dim rngValue As Range Dim i As Integer With Worksheets("data").UsedRange Set rngList = .Offset(1).Resize(.Rows.Count-1) End With For i = 1 To WorksheetFunction.CountA(Range("A:A")) Set rngValue = rngList.Find(Range("G1").Offset(i, 0)) If Not rngValue Is Nothing Then Range("Q1").Offset(i, 0) = "최종완료"..

Programming/VBA

VBA로 갱신일 자동 기록하기

Q2부터 Q1353의 범위 안에 속하는 셀을 편집하는 경우, 해당하는 행의 T 셀에 yyyy-mm-dd 형식의 날짜를 입력한다. 별도의 모듈이 아니라 해당하는 시트 개체를 더블클릭해서 등록하면 된다. Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Range("Q2:Q1353"), Target) Is Nothing Then Range("T" & Target.Row).Value = Format(Now, "yyyy-mm-dd") End If End Sub HTML 삽입 미리보기할 수 없는 소스 엑셀 입력 시간 자동 기록 매크로(입력 / 수정 실시간 자동 감지 기록 Timestamp, VBA) 엑셀 매크로로 작성한 간단한 입력 / 수정..