728x90

๐Ÿ“˜ Programming/Excel VBA 8

[Excel VBA] ๋‹ค๋ฅธ ์—‘์…€ ํŒŒ์ผ ๊ฐ’ ๊ฐ€์ ธ์˜ค๊ธฐ

'Excel 2016' ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. VBA(Visual Basic for Application)๋Š” ์—‘์…€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ์ˆ˜๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์—‘์…€ ํŒŒ์ผ ์ฐธ์กฐํ•˜๊ธฐ ๋‹ค๋ฅธ ํŒŒ์ผ์˜ ์…€์˜ ๊ฐ’์„ ๊ฐ€์ ธ์™€ ์ ์šฉํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด "ํ†ตํ•ฉ ๋ฌธ์„œ 2.xlsx" ํŒŒ์ผ์— ๊ฐ’์ด ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒŒ์ผ์„ ๋‹ซ์•„์ค๋‹ˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด "ํ†ตํ•ฉ ๋ฌธ์„œ1.xlsx"์— "ํ†ตํ•ฉ ๋ฌธ์„œ2.xlsx"์— ์ €์žฅ๋œ A1:C3๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•œ ๋ฒ„ํŠผ์„ ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„ํŠผ์— ๋Œ€ํ•œ VBA ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. Private Sub CommandButton1_Click() Dim copy_range As Variant Application.Workbooks.Op..

[Excel VBA] ์˜ค๋Š˜ ๋‚ ์งœ, ์‹œ๊ฐ„์œผ๋กœ ํŒŒ์ผ ์ด๋ฆ„ ์ €์žฅํ•˜๊ธฐ

'Excel 2016' ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. VBA(Visual Basic for Application)๋Š” ์—‘์…€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ์ˆ˜๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ์˜ค๋Š˜ ๋‚ ์งœ, ์‹œ๊ฐ„์œผ๋กœ ํŒŒ์ผ ์ด๋ฆ„ ์ €์žฅํ•˜๊ธฐ ํŒŒ์ผ ์ด๋ฆ„์„ ์‹œ๊ฐ„ ๊ฐœ๋…์œผ๋กœ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. 1) ์˜ค๋Š˜ ๋‚ ์งœ๋กœ ์ €์žฅํ•˜๊ธฐ (2020-10-29.xlsm) Sub DaySave() Dim fileName fileName = Format(Date, "yyyy/mm/dd") ActiveWorkbook.SaveAs fileName:="C:\Users\kumc\Desktop\" & fileName & ".xlsm", _ FileFormat:=xlOpenXMLWorkbookMacroEnabled,..

[Excel VBA] VBA๋กœ ์ž๋™ ์ €์žฅ ๊ธฐ๋Šฅ ๊ตฌํ˜„ํ•˜๊ธฐ (์‹œ๊ฐ„ ๊ฐ„๊ฒฉ ์ง€์ • ๊ธฐ๋Šฅ)

'Excel 2016' ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. VBA(Visual Basic for Application)๋Š” ์—‘์…€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ์ˆ˜๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ์ž๋™ ์ €์žฅ ๊ธฐ๋Šฅ ์—‘์…€ ์ž‘์—… ์ค‘ ์ž๋™์œผ๋กœ ํ•ด๋‹น ๋ฌธ์„œ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์—ฌ ์‚ฌ๊ณ ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. Public Runwhen Sub Auto_Open() Call Run End Sub Public Sub Run() Runwhen = Now + TimeValue("00:10:00") On Error Resume Next Application.OnTime Runwhen, "Run" DoEvents ThisWorkbook.Save On Error GoTo 0 End Sub..

[Excel VBA] ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐ ์ดˆ๊ธฐํ™” ๋ฐฉ๋ฒ•

'Excel 2016' ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. VBA(Visual Basic for Application)๋Š” ์—‘์…€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ์ˆ˜๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐฉ๋ฒ• - Dim Sub ๋งคํฌ๋กœ1() Dim a a = 100 Cells(2, 2).Value = a End Sub ๋ณ€์ˆ˜๋ฅผ ์ •์˜ํ•  ๋•Œ, 'Dim ๋ณ€์ˆ˜๋ช…' ํ˜•ํƒœ๋กœ ์„ ์–ธํ•ฉ๋‹ˆ๋‹ค. ์œ„์™€ ๊ฐ™์ด ์†Œ์Šค์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ๋งคํฌ๋กœ๋ฅผ ์‹คํ–‰ํ•ด๋ด…์‹œ๋‹ค. ์œ„๋Š” ์‹คํ–‰ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ๋ณ€์ˆ˜ a์— ์ €์žฅ๋œ ์ •์ˆ˜ 100์ด B2์— ์ถœ๋ ฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Sub ๋งคํฌ๋กœ1() Dim a, b a = 100 Cells(2, 2).Value = a b = 300 Cells(2, 3).Value = b End Sub ๋ณ€์ˆ˜๋Š” ์—ฌ๋Ÿฌ๊ฐœ ์ •์˜..

[Excel VBA] ๋ฌธ์ž์—ด ์“ฐ๊ธฐ

'Excel 2016' ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. VBA(Visual Basic for Application)๋Š” ์—‘์…€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ์ˆ˜๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด Sub macro1() Cells(1, 1).Value = "ํ•˜์ด๋ฃฝ" End Sub ์œ„ ์†Œ์Šค์ฝ”๋“œ๋Š” ์…€ A1์˜ ๊ฐ’์„ "ํ•˜์ด๋ฃฝ"์œผ๋กœ ๋ฐ”๊พธ๋Š” ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค. ์œ„์™€ ๊ฐ™์ด ๋ฌธ์ž์—ด์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์Œ๋”ฐ์˜ดํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ฉ๋‹ˆ๋‹ค. ์ž‘์€ ๋”ฐ์˜ดํ‘œ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋งคํฌ๋กœ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์œ„์™€ ๊ฐ™์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

[Excel VBA] Cells, Value - ํŠน์ • ์…€ ๊ฐ’ ์ฐธ์กฐ ๋ฐ ๋ณ€๊ฒฝ ๋ฐฉ๋ฒ•

'Excel 2016' ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. VBA(Visual Basic for Application)๋Š” ์—‘์…€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ์ˆ˜๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ํŠน์ • ์…€ ๊ฐ’ ๋ณ€๊ฒฝ Cells๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํŠน์ • ์…€ ๊ฐ’์„ ์ฐธ์กฐํ•˜๊ณ  ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Cells( ํ–‰, ์—ด ) ์˜ˆ๋ฅผ ๋“ค์–ด, A1์˜ ์…€ ๊ฐ’์„ ์ฐธ์กฐํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด Cells(1, 1) E2์˜ ์…€ ๊ฐ’์„ ์ฐธ์กฐํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด Cells(2, 5)๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋ฉด Y์ถ•์— ์จ์žˆ๋Š” ์ˆซ์ž๊ฐ€ ์•ž์—! โ€ป ์ฃผ์˜ : ์œ„์™€ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜ํƒ€๋‚œ๋‹ค๋ฉด ์ธ๋ฑ์Šค ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค. ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ข€ ํ•ด๋ณธ ์‚ฌ๋žŒ์ด๋ผ๋ฉด ์ธ๋ฑ์Šค ์‹œ์ž‘์€ 0์ด ๊ตญ๋ฃฐ์ด๋ผ ์ƒ๊ฐํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ์Œ! ์—ฌ๊ธด 1๋ถ€ํ„ฐ! Sub ๋งคํฌ๋กœ1() Cells(1..

[Excel VBA] ๋งคํฌ๋กœ ํŒŒ์ผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ €์žฅํ•˜๊ธฐ

'Excel 2016' ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. VBA(Visual Basic for Application)๋Š” ์—‘์…€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ์ˆ˜๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋งคํฌ๋กœ ํŒŒ์ผ ์ €์žฅ ๋ฐฉ๋ฒ• ์—ด์‹ฌํžˆ VBA๋กœ ์ž‘์„ฑํ•œ ๋งคํฌ๋กœ๊ฐ€ ํฌํ•จ๋œ ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ  ๋‹ค๋ฅธ PC์— ๊ณต์œ ํ•˜๋ฉด ๊ธฐ๋Šฅ์ด ๋™์ž‘ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜, ์—ด๋ฆฌ์ง€ ์•Š๋Š” ๋‹นํ™ฉ์Šค๋Ÿฌ์›€์„ ๊ฒช์—ˆ๋‹ค๋ฉด ๋งคํฌ๋กœ ํŒŒ์ผ ์ €์žฅ ๋ฐฉ๋ฒ•์ด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋งคํฌ๋กœ๋ฅผ ์ž‘์„ฑํ•œ ์—‘์…€ ํŒŒ์ผ์„ ์ €์žฅํ•˜๋ ค ํ•˜๋ฉด ์œ„์™€ ๊ฐ™์€ ๊ฒฝ๊ณ ์ฐฝ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ์š”์•ฝํ•˜๋ฉด "์ €์žฅํ•ด๋„ ๋งคํฌ๋กœ๋Š” ์ €์žฅ ์•ˆ๋˜๋Š”๋ฐ ๊ดœ์ฐฎ์•„?" ๋ผ๊ณ  ๋ฌผ์–ด๋ณด๋Š” ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ์ €์žฅ ์‹œ, ํŒŒ์ผ ํ˜•์‹์„ ์œ„ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด "Excel ๋งคํฌ๋กœ ์‚ฌ์šฉ ํ†ตํ•ฉ ๋ฌธ์„œ"๋กœ ๋ฐ”๊ฟ” ์ €์žฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋งคํฌ๋กœ..

[Excel VBA] ์ž๋™์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ๋งคํฌ๋กœ ์ƒ์„ฑ ๋ฐฉ๋ฒ•

'Excel 2016' ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. VBA(Visual Basic for Application)๋Š” ์—‘์…€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ํ•จ์ˆ˜๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋งคํฌ๋กœ ์ƒ์„ฑ ๋ฉ”๋‰ด์—์„œ [๋ณด๊ธฐ] ๋ฅผ ๋ˆ„๋ฅด๋ฉด ์šฐ์ธก ๋์— [๋งคํฌ๋กœ] ๋ฒ„ํŠผ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด [๋งคํฌ๋กœ ๊ธฐ๋ก] ์„ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค. ๋‹จ์ถ•ํ‚ค๋ฅผ ์„ค์ •์„ ํ•˜๊ณ , ํ™•์ธ์„ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค. ์—‘์…€์—์„œ๋Š” Ctrl+t ๋‹จ์ถ•ํ‚ค๊ฐ€ ์ •์˜๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ์—ฐ์Šต์šฉ์œผ๋กœ 'Ctrl+t' ๋ฅผ ์‚ฌ์šฉํ•ด ๋ด…์‹œ๋‹ค. ๋งคํฌ๋กœ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์€ 2๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. 1) ๋งคํฌ๋กœ ์ƒ์„ฑ ํ›„, ์‚ฌ์šฉ์ž์˜ ํ–‰๋™์„ ๋…นํ™”ํ•˜์—ฌ ๊ทธ๋Œ€๋กœ ๋™์ž‘ํ•˜๊ฒŒ ํ•˜๋Š” ๋งคํฌ๋กœ ์ƒ์„ฑ 2) ๋งคํฌ๋กœ๋ฅผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ฝ”๋“œ(VBA)๋กœ ์ƒ์„ฑ 1)๊ณผ ๊ฐ™์€ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์œ„ ์‚ฌ์ง„์—์„œ ํ™•์ธ์„ ๋ˆ„..

๋ฐ˜์‘ํ˜•