<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>program1472 &amp;gt; 자료실 &amp;gt; vb6.0/vba</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03</link>
<language>ko</language>
<description>vb6.0/vba (2023-11-15 13:17:27)</description>

<item>
<title>[vba] Excel에서의 Randomize 함수: 무작위 값 생성의 비밀 해제</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=146</link>
<description><![CDATA[<div></div><div class="se-component se-text se-l-default" style="margin:0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-text se-l-default" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">엑셀을 사용하면서 랜덤한 값을 생성해야 할 때, 가끔씩 동일한 값만이 반복되는 현상을 경험한 적이 있을 것입니다. </span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">오늘은 그 이유와 해결책에 대해 알아보겠습니다.</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">무작위(random) 작업을 하는 코드를 보면 Randomize라고 하는 명령어들이 가끔 나옵니다.</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">많은 사람들은 엑셀이 당연히 계속하여 새로운 무작위 숫자를 만들거라고 생각합니다. </span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">하지만,  엑셀은 계속 같은 무작위(???) 값을 가져온다. 왜?</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">왜냐하면, 엑셀은 내부의 랜덤한 숫자 발생기가 있고, 여기에 있는 숫자를 이용하여 랜덤한 값을 생성하는데 Randomize를 해주지 않으면 계속하여 동일한 값을 사용하기 때문입니다.</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"> Randomize 함수는 랜덤 숫자 발생기의 숫자를 랜덤하게 바꾸어주어 계속하여 새로운 랜덤 값이 생성되도록 합니다. </span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">구글 검색을 해보면</span></p></div></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="margin:0px;padding:0px;font:inherit;border-width:1px 0px 0px 1px;border-style:solid;border-color:rgb(210,210,210);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="3" rowspan="1" style="margin:0px;padding:10px;border-width:0px 1px 1px 0px;border-style:solid;border-color:rgb(210,210,210);font:inherit;vertical-align:middle;background-color:transparent;max-width:0px;width:527px;height:128px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs24 se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"><span style="font-weight:700;background-color:inherit;font-family:inherit;">정의</span></span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">네임스페이스: Microsoft.VisualBasic</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">어셈블리: Microsoft.VisualBasic.Core.dll</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">난수 생성기를 초기화합니다.</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="margin:0px;padding:0px;font:inherit;border-width:1px 0px 0px 1px;border-style:solid;border-color:rgb(210,210,210);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="3" rowspan="1" style="margin:0px;padding:10px;border-width:0px 1px 1px 0px;border-style:solid;border-color:rgb(210,210,210);font:inherit;vertical-align:middle;background-color:transparent;max-width:0px;width:527px;height:129px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs24 se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"><span style="font-weight:700;background-color:inherit;font-family:inherit;">설명</span></span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">메서드의 Randomize 이 오버로드는 시드 값을 사용하지 않습니다. 대신 시스템 타이머에서 반환된 값이 새 시드 값으로 사용됩니다.</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">사용되지 Rnd 않는 경우 Randomize 인수가 없는 함수는 처음 호출될 때 시드와 동일한 숫자를 사용하고, 그 후 마지막으로 생성된 숫자를 시드 값으로 사용합니다.</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"> </span><span class="se-fs-fs24 se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"><span style="font-weight:700;background-color:inherit;font-family:inherit;">참고</span></span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">난수 시퀀스를 반복하려면 숫자 인수와 함께 사용하기 Randomize 직전에 음수 인수를 사용하여 호출 Rnd 합니다.</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"> </span><span class="se-fs-fs24 se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"><span style="font-weight:700;background-color:inherit;font-family:inherit;">중요</span></span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">문과 함수는 Random Rnd 시드 값으로 시작하고 유한 범위 내에 속하는 숫자를 생성하기 때문에 생성에 사용되는 알고리즘을 아는 사람이 결과를 예측할 수 있습니다. 따라서 Random 문과 함수를 Rnd 사용하여 암호화에 사용할 난수를 생성해서는 안 됩니다. 자세한 내용은 RandomNumberGenerator를 참조하세요.</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-text se-l-default" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-text se-l-default" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">그러므로 랜덤한 값을 생성할 때는 아래와 같이 해주는게 좋습니다.</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">1. 첫 번째로, 아래와 같은 코드를 실행했을 때 첫 값이 계속해서 동일한 값으로 나타나는 상황을 가정해봅시다. (Randomize 행이 주석 처리된 상태)</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">


 zzz</span></p></div></div></div></div><div class="se-component se-text se-l-default" style="margin:20px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-text se-l-default" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">이렇게 실행하면 매번 첫 값은 8로 고정되어 나타날 것입니다. </span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">왜냐하면 엑셀은 내부적으로 랜덤한 숫자 발생기를 가지고 있고, 이 발생기에서 생성된 숫자를 이용하여 랜덤한 값을 만들어냅니다. </span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">그런데 Randomize 함수가 주석 처리되어 있으면 랜덤한 숫자 발생기의 초기 상태가 변하지 않아 항상 같은 값이 나오게 됩니다.</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">2. 하지만, Randomize 함수의 주석을 제거하면 상황은 달라집니다.</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">


 zzz</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"><br /></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">이번에는 첫 값이 8이 아닌, 예를 들어 6이 나타날 것입니다. </span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">Randomize 함수는 랜덤 숫자 발생기의 초기 상태를 랜덤하게 바꾸어줌으로써, 매번 다른 값을 생성할 수 있도록 도와줍니다. </span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">이렇게 함으로써 동일한 값이 반복되는 문제를 해결할 수 있습니다.</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">따라서, 랜덤한 값을 생성할 때는 항상 Randomize 함수를 활용하여 랜덤 숫자 발생기를 초기화해주는 것이 좋습니다. </span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">이를 통해 엑셀에서의 무작위 값 생성을 더욱 효과적으로 수행할 수 있습니다.</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;"></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-size:11px;line-height:1.8;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">긴글 읽어주셔 감사합니다.</span></p></div></div></div></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-11-15T13:17:27+09:00</dc:date>
</item>


<item>
<title>[vb6.0/vba] vba를 활용한 결재 도장 삽입</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=145</link>
<description><![CDATA[<div></div><p><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);">지식인 답변 중 기록에 남겨둘만해서 남겨봅니다.</span> </p><p>h t t p s : / / k i n . n a v e r . c o m / q n a / d e t a i l . n a v e r ? d 1 i d = 1 &amp; d i r I d = 1 0 2 0 2 0 1 0 1 &amp; d o c I d = 4 5 7 8 4 8 7 7 4<br /></p><p><br /></p><p><img src="../../../data/editor/2311/8d9a1bcf098121f847ad87f0d894ab8b_1699097048_354.png" title="8d9a1bcf098121f847ad87f0d894ab8b_1699097048_354.png" alt="8d9a1bcf098121f847ad87f0d894ab8b_1699097048_354.png" /></p><p>여기서 도형을 순서대로 "수", "우", "미", "양", "가" 로 이름을 지정합니다.</p><p><br style="clear:both;" /><img src="../../../data/editor/2311/8d9a1bcf098121f847ad87f0d894ab8b_1699097048_8471.png" title="8d9a1bcf098121f847ad87f0d894ab8b_1699097048_8471.png" alt="8d9a1bcf098121f847ad87f0d894ab8b_1699097048_8471.png" /><span style="background-color:rgb(255,255,255);color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;">다음으로 B2 셀에 "수", "우", "미", "양", "가"를 입력 후 엔터를 치면 해당하는 칸에 이미지가 삽입됩니다.</span></p><p><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);">기존 삽입된 상태이면 중복 삽입이 되지 않습니다.</span><br style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);" /><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);">"수", "우", "미", "양", "가" 외에 다른 글자 즉 해당하는 이름의 도형이 없으면 작업을 자동 종료합니다.</span></p><p><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);"><br /></span></p><p><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);"><br /></span></p><p><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);">아래는 VBA 소스코드입니다.</span></p><p><br /></p><table class="__se_tbl" border="0" cellpadding="0" cellspacing="0" style="border:1px solid rgb(199,199,199);"><tbody><tr><td width="935" style="padding:3px 4px 2px;background-color:rgb(243,243,243);color:rgb(102,102,102);border-right:1px solid rgb(231,231,231);text-align:left;font-weight:normal;"><p> <span style="white-space:pre;">Option Explicit</span></p><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'// 현재 시트의 셀값이 변경되면 실행되는 프로시저</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> Worksheet_Change(<span style="color:#a71d5d;">ByVal</span> Target <span style="color:#a71d5d;">As</span> Range)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> Target.Address <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#a71d5d;">Me</span>.[B2].Address <span style="color:#a71d5d;">Then</span>    <span style="color:#999999;">'// 셀값이 변경된 셀이 A2셀이면</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        AppSetting <span style="color:#066de2;">False</span>    <span style="color:#999999;">'// 프로시저 값 False 호출</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> S <span style="color:#a71d5d;">As</span> Shape, i <span style="color:#a71d5d;">As</span> Integer    <span style="color:#999999;">'// 앞으로 상용할 변수 선언</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'// 현재 신트의 해당 도형이 있으면 종료(중복 삽입 방지)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Set</span> S <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> shp(<span style="color:#a71d5d;">Me</span>, Target): <span style="color:#a71d5d;">If</span> <span style="color:#a71d5d;">Not</span> S Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span> GoTo ErrPass</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'// 도형이 있는 시트에서 해당하는 도형이 없으면 종료</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Set</span> S <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> shp(Sheet2, Target): <span style="color:#a71d5d;">If</span> S Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span> GoTo ErrPass</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'// 가져올 도형 카피</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        S.CopyPicture</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'// 입력한 값에 해당하는 위치값을 반환</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        i <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Application.WorksheetFunction.Match(Target, <span style="color:#066de2;">Array</span>(<span style="color:#63a35c;">"수"</span>, <span style="color:#63a35c;">"우"</span>, <span style="color:#63a35c;">"미"</span>, <span style="color:#63a35c;">"양"</span>, <span style="color:#63a35c;">"가"</span>), <span style="color:#0099cc;">0</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'// 찿은 셀에 복사한 도형을 붙여넣음</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.Paste Destination:<span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span>[C2].Offset(, i)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'// 붙여넣은 도형에 대해서</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        With Selection</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#999999;">'// Top 설정(셀의 세로 가운데)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .Top <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> .TopLeftCell.Top <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> (.TopLeftCell.Height <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span> .Height) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">/</span> <span style="color:#0099cc;">2</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#999999;">'// 왼쪽 설정(셀에 가로 가운데)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .Left <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> .TopLeftCell.Left <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> (.TopLeftCell.Width <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span> .Width) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">/</span> <span style="color:#0099cc;">2</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            </div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#999999;">'// 도형의 이름을 변경(추후 중복 삽입 방지)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .Name <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Target</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">End</span> With</div><div style="padding:0 6px;white-space:pre;line-height:130%;">ErrPass:</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'// 입력받은 셀로 복귀</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Target.Activate</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'// 화면의 변화와 이벤트 활성</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        AppSetting <span style="color:#066de2;">True</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'// 지정한 시트에 지정한 이름의 도형을 반환하는 함수</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> Function shp(<span style="color:#a71d5d;">ByVal</span> S <span style="color:#a71d5d;">As</span> Worksheet, <span style="color:#a71d5d;">ByVal</span> Name <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>) <span style="color:#a71d5d;">As</span> Shape</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    On Error Resume <span style="color:#a71d5d;">Next</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> shp <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> S.Shapes(Name)</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Function</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'// 스크린 변화와 이벤트 비활성/활성 프로시저</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> AppSetting(<span style="color:#a71d5d;">ByVal</span> value <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Boolean</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Application.ScreenUpdating <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> value  <span style="color:#999999;">'// 화면의 변화를 value 값으로</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Application.EnableEvents <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> value    <span style="color:#999999;">'// 이벤트 사용여부 활성/비활성</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div></td>


</tr></tbody></table><br /><br /><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-11-04T20:28:28+09:00</dc:date>
</item>


<item>
<title>[vba/vb.net] 지정된 시간이 지나면 자동으로 닫히는 메시지 상자</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=143</link>
<description><![CDATA[<div></div><div class="article">


	            











            <div class="contents_style"><h2> </h2>


<div style="border-bottom:#fe8943 3px double;border-left:#fe8943 3px double;padding-bottom:10px;background-color:#fedec7;padding-left:10px;padding-right:10px;border-top:#fe8943 3px double;border-right:#fe8943 3px double;padding-top:10px;" class="txc-textbox">


<h2>화면에 메시지를 표시하려면 MsgBox 함수를 사용합니다.</h2></div>


<p> </p>


<p><span style="font-size:12pt;">예를 들어 다음 코드는 화면에 "LOTIONY" 라는 문자열을 표시합니다.</span></p><pre class="brush:vb">Sub Sample ()


    MsgBox "LOTIONY"


End Sub


</pre>


<p> </p>


<p><span style="font-size:12pt;">화면에는 <strong>[OK] 버튼</strong>이 있는 <strong><span style="color:#030066;">메시지 상자</span></strong>가 표시됩니다.</span></p>


<p><span style="font-size:12pt;">이 메시지 상자는 사용자가 OK 버튼을 누를 때 까지 계속해서 모달창으로 표시가 되지요.</span></p>


<p> </p>


<p><span style="font-size:12pt;"><span style="color:#ff007f;"><strong>지정된 시간이 지나면 자동으로 닫히는 메시지 상자</strong></span>를 만들수는 없을까 해서 찾아보았습니다.</span></p>


<p> </p>


<p><span style="font-size:12pt;">우선 MsgBox가 가지고 있는 기본 인자값들만으로는 구현이 불가능했습니다.</span></p>


<p><span style="font-size:12pt;">그리고 그것을 대체할만한 함수나 기능이 VB/VBA 에는 별도로 마련되어 있지 않습니다.</span></p>


<p><span style="font-size:12pt;">이 기능을 구현하려면 <strong><span style="color:#ff007f;">Windows Scripting Host (WSH)</span></strong> 를 사용합니다.</span></p>


<p> </p>


<p> </p>


<p> </p>


<div style="border-bottom:#79a5e4 1px solid;border-left:#79a5e4 1px solid;padding-bottom:10px;background-color:#dbe8fb;padding-left:10px;padding-right:10px;border-top:#79a5e4 1px solid;border-right:#79a5e4 1px solid;padding-top:10px;" class="txc-textbox">


<p><span style="font-size:12pt;"><strong>지정된 시간이 지나면 자동으로 닫히는 메시지박스(MsgBox) 만들기</strong></span></p></div>


<p> </p><pre class="brush:vb">Sub test()


    Dim WSH As Object


    Set WSH = CreateObject("WScript.Shell")


    WSH.Popup "5 초 후 자동으로 닫습니다", 5, "Title", vbInformation


    Set WSH = Nothing


End Sub


</pre>


<p> </p>


<p> </p>


<p> </p>


<div style="border-bottom:#c1c1c1 1px dashed;border-left:#c1c1c1 1px dashed;padding-bottom:10px;background-color:#eeeeee;padding-left:10px;padding-right:10px;border-top:#c1c1c1 1px dashed;border-right:#c1c1c1 1px dashed;padding-top:10px;" class="txc-textbox">


<p><span style="font-size:10pt;">WSH.Popup (strText, [nSecondsToWait], [strTitle], [nType])</span></p></div>


<p> </p>


<table style="border-bottom:medium none;border-left:medium none;border-collapse:collapse;font-family:'돋움';font-size:9pt;border-top:medium none;border-right:medium none;" class="txc-table" border="0" cellspacing="0" cellpadding="0" width="658"><tbody><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:#ffead8;width:177px;height:38px;color:#000;border-top:#fb861f 1px solid;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><strong><span style="font-size:10pt;"> 매개변수</span></strong></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:#ffead8;width:482px;height:38px;color:#000;border-top:#fb861f 1px solid;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:12pt;"><strong><span style="font-size:10pt;"> 의미</span></strong></span></p></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:177px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">strText</span></font></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:482px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">메시지 상자에 표시 할 문자열.</span><span style="font-size:10pt;" class="Apple-converted-space"> </span></font><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><span style="font-size:10pt;">필수 요소</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:177px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">nSecondsToWait</span></font></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:482px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">메시지 상자를 닫을 때까지의 시간.</span><span style="font-size:10pt;" class="Apple-converted-space"> </span></font><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><span style="font-size:10pt;">선택적</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:177px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">strTitle</span></font></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:482px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">메시지 상자의 제목.</span><span style="font-size:10pt;" class="Apple-converted-space"> </span></font><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><span style="font-size:10pt;">선택적</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:177px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">nType</span></font></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:482px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">아이콘이나 버튼의 종류.</span><span style="font-size:10pt;" class="Apple-converted-space"> </span></font><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><span style="font-size:10pt;">선택적</span></font></td></tr></tbody></table><p> </p>


<p> </p>


<p> </p>


<p><span style="font-size:12pt;">매개변수 <strong>nSecondsToWait</strong>에서 지정한 시간이 되기 전에 사용자가 버튼을 조작하면 언제든지 메시지박스를 닫을 수 있습니다.</span></p>


<p><span style="font-size:12pt;">매개변수 <strong>nType</strong>은 다음 값을 지정할 수 있고</span><span style="font-size:12pt;"> MsgBox 에서 사용되는 상수와 다르지 않습니다.</span></p>


<p> </p>


<table style="border-bottom:medium none;border-left:medium none;border-collapse:collapse;font-family:'돋움';font-size:9pt;border-top:medium none;border-right:medium none;" class="txc-table" border="0" cellspacing="0" cellpadding="0" width="658"><tbody><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:#ffead8;width:57px;height:35px;color:#000;border-top:#fb861f 1px solid;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"><strong> 값</strong></span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:#ffead8;width:173px;height:35px;color:#000;border-top:#fb861f 1px solid;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"><strong>VBA 상수 </strong></span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:#ffead8;width:427px;height:35px;color:#000;border-top:#fb861f 1px solid;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"><strong>의미 </strong></span></p></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:28px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 0</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:28px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbOKOnly</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:28px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">[OK] 버튼을 표시합니다</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 1</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbOKCancel</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">[OK] 버튼과 취소 버튼을 표시합니다</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 2</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbAbortRetryIgnore</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">중지 버튼, 다시 시도 버튼 및 무시 단추를 표시합니다</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:23px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 3</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:23px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbYesNoCancel</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:23px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">[예] 버튼 아니요 단추 및 취소 단추를 표시합니다</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 4</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbYesNo</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">[예] 버튼과 [아니오] 버튼을 표시합니다</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 5</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbRetryCancel</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">다시 시도 버튼과 취소 버튼을 표시합니다</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 16</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbCritical</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><span style="font-size:10pt;">아이콘을 표시합니다</span></font></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 32</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbQuestion</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><span style="font-size:12pt;"><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><span style="font-size:10pt;">아이콘을 표시합니다</span></font></font></span></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 48</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbExclamation</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><span style="font-size:10pt;">아이콘을 표시합니다</span></font></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:57px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 64</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:173px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbInformation</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:427px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><font style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;padding-top:0px;"><span style="font-size:10pt;">아이콘을 표시합니다</span></font></font></td></tr></tbody></table><p> </p>


<p> </p>


<p> </p>


<p><span style="font-size:12pt;">Popup메서드로 띄운 메시지 상자에서 버튼을 클릭했을 때 반횐되는 값도 MsgBox와 동일합니다.</span></p>


<p> </p>


<table style="border-bottom:medium none;border-left:medium none;width:452px;border-collapse:collapse;font-family:'돋움';font-size:9pt;border-top:medium none;border-right:medium none;" class="txc-table" border="0" cellspacing="0" cellpadding="0" width="452"><tbody><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:#ffead8;width:56px;height:37px;color:#000;border-top:#fb861f 1px solid;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><strong><span style="font-size:10pt;"> 값</span></strong></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:#ffead8;width:174px;height:37px;color:#000;border-top:#fb861f 1px solid;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><strong><span style="font-size:10pt;">VBA 상수</span></strong></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:#ffead8;width:221px;height:37px;color:#000;border-top:#fb861f 1px solid;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><strong><span style="font-size:10pt;">클릭된 버튼 </span></strong></p></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:56px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 1</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:174px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbOK</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:221px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">[OK] 버튼</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:56px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 2</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:174px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbCancel</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:221px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">취소 버튼</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:56px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 3</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:174px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbAbort</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:221px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">중지 버튼</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:56px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 4</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:174px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbRetry</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:221px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">다시 시도 버튼</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:56px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 5</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:174px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbIgnore</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:221px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">무시 버튼</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:56px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 6</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:174px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbYes</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:221px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">[예] 버튼</span></font></td></tr><tr><td style="border-bottom:#fb861f 1px solid;border-left:#fb861f 1px solid;background-color:transparent;width:56px;height:24px;color:#000;border-right:#fb861f 1px solid;">


<p style="text-align:center;"><span style="font-size:10pt;"> 7</span></p></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:174px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">vbNo</span></font></td>


<td style="border-bottom:#fb861f 1px solid;background-color:transparent;width:221px;height:24px;color:#000;border-right:#fb861f 1px solid;"><span style="font-size:10pt;"> </span><font size="3"><span style="font-size:10pt;">아니오 버튼</span></font></td></tr></tbody></table><p> </p>


<p><span style="font-size:12pt;">시간이 경과해서 자동으로 메시지상자가 닫힌 경우에는<strong><span style="color:#ff007f;"> -1</span></strong> 이 리턴됩니다.</span><br /></p></div>











	</div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-08-10T17:33:51+09:00</dc:date>
</item>


<item>
<title>[vba] Outlook 현재 활성화된 창의 제목 및 내용을 가져오는 방법</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=142</link>
<description><![CDATA[<div></div><p><br /></p><table class="__se_tbl" border="0" cellpadding="0" cellspacing="0" style="border:1px solid rgb(166,188,209);"><tbody><tr><td width="935" style="padding:3px 4px 2px;background-color:rgb(246,248,250);color:rgb(61,118,171);border-right:1px solid rgb(225,238,247);text-align:left;font-weight:normal;"><p> VBA</p></td>


</tr><tr><td width="935" style="padding:3px 4px 2px;background-color:rgb(255,255,255);border-top:1px solid rgb(225,238,247);border-right:1px solid rgb(225,238,247);color:rgb(61,118,171);"><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Sub</span> progrgram1472()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> myOlExp <span style="color:#a71d5d;">As</span> Outlook.Explorer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> myOlSel <span style="color:#a71d5d;">As</span> Outlook.Selection</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> myOlExp <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Application.ActiveExplorer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> myOlSel <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> myOlExp.Selection</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> selectedFolder <span style="color:#a71d5d;">As</span> Outlook.MAPIFolder</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> selectedFolder <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> myOlExp.CurrentFolder</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> itemMessage <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"Item is unknown."</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> expMessage <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    expMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"Your current folder is "</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> selectedFolder.Parent.Name <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">" - "</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> selectedFolder.Name <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"."</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> vbCrLf</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> myOlSel.Count <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span> <span style="color:#0099cc;">0</span> <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> selObject <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Set</span> selObject <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> myOlSel.Item(<span style="color:#0099cc;">1</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">If</span> (TypeOf selObject Is Outlook.mailItem) <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Dim</span> mailItem <span style="color:#a71d5d;">As</span> Outlook.mailItem</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Set</span> mailItem <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> selObject</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"The item is an e-mail message."</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">" The subject is "</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> mailItem.Subject <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"."</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> vbCrLf</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> mailItem.Body</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#999999;">'mailItem.Display (False)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        ElseIf (TypeOf selObject Is Outlook.contactItem) <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Dim</span> contactItem <span style="color:#a71d5d;">As</span> Outlook.contactItem</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Set</span> contactItem <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> selObject</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"The item is a contact."</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">" The full name is "</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> contactItem.Subject <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"."</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#999999;">'contactItem.Display (False)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        ElseIf (TypeOf selObject Is Outlook.AppointmentItem) <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Dim</span> apptItem <span style="color:#a71d5d;">As</span> Outlook.AppointmentItem</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Set</span> apptItem <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> selObject</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"The item is an appointment."</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> apptItem.Subject <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"."</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        ElseIf (TypeOf selObject Is Outlook.taskItem) <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Dim</span> taskItem <span style="color:#a71d5d;">As</span> Outlook.taskItem</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Set</span> taskItem <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> selObject</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"The item is a task."</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">" The body is "</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> taskItem.Body <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"."</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        ElseIf (TypeOf selObject Is Outlook.meetingItem) <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Dim</span> meetingItem <span style="color:#a71d5d;">As</span> Outlook.meetingItem</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Set</span> meetingItem <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> selObject</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            itemMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"The item is a meeting item. "</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"The subject is "</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> meetingItem.Subject <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"."</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    expMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> expMessage <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> itemMessage</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    MsgBox (expMessage)</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div></td>


</tr></tbody></table><p><br /></p><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-07-10T07:59:54+09:00</dc:date>
</item>


<item>
<title>[vb6.0/vba] 쿠팡 상품 크롤링</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=141</link>
<description><![CDATA[<div></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Sub</span> 검색()</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'/****************** 기존코드</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> s <span style="color:#a71d5d;">As</span> Shape</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">For</span> Each s In ActiveSheet.Shapes</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Debug.Print s.Name</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">If</span> s.Name <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"이미지"</span> <span style="color:#a71d5d;">Then</span> s.Delete</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Next</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Range(<span style="color:#63a35c;">"5:10000"</span>).ClearContents</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'/****************** &lt;&lt; 여기까지</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'/****************** 변수선언</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> URL <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, query <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, page <span style="color:#a71d5d;">As</span> Integer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> IE <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, T <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, Referer <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, Cookie <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> v <span style="color:#a71d5d;">As</span> Variant, i <span style="color:#a71d5d;">As</span> Integer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> htmlfile <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, productList <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, elem <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'/****************** 설정</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> IE <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"WinHttp.WinHttpRequest.5.1"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> htmlfile <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"htmlfile"</span>) <span style="color:#999999;">': htmlfile.Open: htmlfile.Write ""</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Cookie <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"sid=; "</span>   <span style="color:#999999;">'// 필수 쿠키(없을시 응답 없음, 시간 초과)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    query <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> fn.encode([D2])</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'/****************** 무한루프 시작</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Do</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        page <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> page <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"<a href="https://www.coupang.com/np/search?" rel="nofollow">https://www.coupang.com/np/search?</a>"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"rocketAll=false"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;q="</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> query</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;isPriceRange=false"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;page="</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> page</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;filterSetByUser=true"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;channel=user"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;rating=0"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;sorter=scoreDesc"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;listSize=100"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        With IE</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .Open <span style="color:#63a35c;">"GET"</span>, URL</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .SetRequestHeader <span style="color:#63a35c;">"Host"</span>, <span style="color:#63a35c;">"<a href="http://www.coupang.com" rel="nofollow">www.coupang.com</a>"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .SetRequestHeader <span style="color:#63a35c;">"User-Agent"</span>, <span style="color:#63a35c;">"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/110.0"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .SetRequestHeader <span style="color:#63a35c;">"Accept"</span>, <span style="color:#63a35c;">"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">If</span> Len(Cookie) <span style="color:#a71d5d;">Then</span> .SetRequestHeader <span style="color:#63a35c;">"Cookie"</span>, Cookie</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .SetRequestHeader <span style="color:#63a35c;">"Origin"</span>, <span style="color:#63a35c;">"<a href="https://www.coupang.com/" rel="nofollow">https://www.coupang.com/</a>"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .Send</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            .WaitForResponse: DoEvents</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            T <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> .ResponseText</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">End</span> With</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        </div><div style="padding:0 6px;white-space:pre;line-height:130%;">        SetClipboard T: Stop    <span style="color:#999999;">'// 클립보드에 가져온 HTML 소스 넣고 브레이크</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#999999;">'htmlfile.Write T</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        htmlfile.body.innerHTML <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> T</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Set</span> productList <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> htmlfile.getElementById(<span style="color:#63a35c;">"productList"</span>): i <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">0</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Do</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            i <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> i <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Set</span> elem <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> getXPathElement(<span style="color:#63a35c;">"/li["</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> i <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"]"</span>, productList)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">If</span> <span style="color:#a71d5d;">Not</span> elem Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">'// 이곳에서 상품 크롤링하면 됩니다.</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Debug.Print getXPathElement(<span style="color:#63a35c;">"/a/dl/dd/div/div[2]"</span>, elem).innerTEXT    <span style="color:#999999;">'// 상품명 출력</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Loop Until elem Is <span style="color:#066de2;">Nothing</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Stop    <span style="color:#999999;">'// 브레이크</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Loop Until i <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span> <span style="color:#0099cc;">101</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    MsgBox <span style="color:#63a35c;">"모든 상품을 가져왔습니다."</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'// 클립보드에 텍스트 넣기</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Public</span> Function SetClipboard(ByRef sText <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>) <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Boolean</span> <span style="color:#999999;">' ### 리턴값: 성공 여부</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    On Error GoTo nErr</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Static Clipboard <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> Clipboard Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span> <span style="color:#a71d5d;">Set</span> Clipboard <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}"</span>)  <span style="color:#999999;">'// Microsoft Forms 2.0 Object Library</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Clipboard.SetText sText: Clipboard.PutInClipboard</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    SetClipboard <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">True</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">nErr:</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Function</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'// xPath를 이용한 크롤링을 위한 함수</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Public</span> Function getXPathElement(sXPath <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, objElement <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>) <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    On Error GoTo ErrPass</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> sXPathArray() <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> sNodeName <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, sNodeNameIndex <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> sRestOfXPath <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> lNodeIndex <span style="color:#a71d5d;">As</span> Long, lCount <span style="color:#a71d5d;">As</span> Long</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    sXPathArray <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Split(sXPath, <span style="color:#63a35c;">"/"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    sNodeNameIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> sXPathArray(<span style="color:#0099cc;">1</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> <span style="color:#a71d5d;">Not</span> InStr(sNodeNameIndex, <span style="color:#63a35c;">"["</span>) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span> <span style="color:#0099cc;">0</span> <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        sNodeName <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> sNodeNameIndex</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        lNodeIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Else</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        sXPathArray <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Split(sNodeNameIndex, <span style="color:#63a35c;">"["</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        sNodeName <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> sXPathArray(<span style="color:#0099cc;">0</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        lNodeIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CLng(Left(sXPathArray(<span style="color:#0099cc;">1</span>), Len(sXPathArray(<span style="color:#0099cc;">1</span>)) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span> <span style="color:#0099cc;">1</span>))</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    sRestOfXPath <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Right(sXPath, Len(sXPath) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span> (Len(sNodeNameIndex) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> <span style="color:#0099cc;">1</span>))</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> getXPathElement <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">Nothing</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">For</span> lCount <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">0</span> <span style="color:#a71d5d;">To</span> objElement.ChildNodes().Length <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">If</span> UCase(objElement.ChildNodes().Item(lCount).nodeName) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> UCase(sNodeName) <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">If</span> lNodeIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span> <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                <span style="color:#a71d5d;">If</span> sRestOfXPath <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">""</span> <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                    <span style="color:#a71d5d;">Set</span> getXPathElement <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> objElement.ChildNodes().Item(lCount)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                <span style="color:#a71d5d;">Else</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                    <span style="color:#a71d5d;">Set</span> getXPathElement <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> getXPathElement(sRestOfXPath, objElement.ChildNodes().Item(lCount))</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            lNodeIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> lNodeIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Next</span> lCount</div><div style="padding:0 6px;white-space:pre;line-height:130%;">ErrPass:</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Function</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-03-11T09:00:33+09:00</dc:date>
</item>


<item>
<title>[vb6.0/vba] 파일명에서 사용할 수 없는 텍스트(파일명) 치환함수</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=140</link>
<description><![CDATA[<div></div><div style="padding:0 6px;white-space:pre;line-height:130%;">Function changeFileName(txt)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> txt</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">"\"</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">"/"</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">":"</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">"*"</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">"?"</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">""</span><span style="color:#63a35c;">""</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">"&lt;"</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">"&gt;"</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    s <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Replace(s, <span style="color:#63a35c;">"|"</span>, <span style="color:#63a35c;">"_"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    changeFileName <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> s</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Function</div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-03-11T08:50:04+09:00</dc:date>
</item>


<item>
<title>[vb6.0/vba] WinHttp를 이용한 파일 다운로드 downloadFile 함수</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=139</link>
<description><![CDATA[<div></div><div style="padding:0 6px;white-space:pre;line-height:130%;">Function downloadFile(URL, localPath) <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    On Error GoTo goErr</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> winhttp <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"WinHttp.WinHttpRequest.5.1"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    winhttp.Open <span style="color:#63a35c;">"GET"</span>, URL, <span style="color:#066de2;">False</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    winhttp.Send</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> objStream <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"ADODB.Stream"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    objStream.Open</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    objStream.Type <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    objStream.Write winhttp.responseBody</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    objStream.SaveToFile localPath, <span style="color:#0099cc;">2</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    objStream.Close</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Exit Function</div><div style="padding:0 6px;white-space:pre;line-height:130%;">goErr:</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    downloadFile <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Err.Description</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Function</div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-03-11T08:47:02+09:00</dc:date>
</item>


<item>
<title>[vb6.0/vba] htmlfile(MSHTML.HTMLDocument) 를 이용한 스크립트를 통한 encode / decode</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=138</link>
<description><![CDATA[<div></div><div style="padding:0 6px;white-space:pre;line-height:130%;">Function encode(str)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> htmlfile <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"htmlfile"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    htmlfile.parentWindow.execScript <span style="color:#63a35c;">"function encode(s) {return encodeURIComponent(s)}"</span>, <span style="color:#63a35c;">"jscript"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    encode <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> htmlfile.parentWindow.encode(str)</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Function</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">Function decode(str)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> htmlfile <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"htmlfile"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    htmlfile.parentWindow.execScript <span style="color:#63a35c;">"function decode(s) {return decodeURIComponent(s)}"</span>, <span style="color:#63a35c;">"jscript"</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    decode <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> htmlfile.parentWindow.decode(str)</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Function</div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-03-11T08:43:55+09:00</dc:date>
</item>


<item>
<title>로또 6/45 번호 회차별 당첨번호 크롤링</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=137</link>
<description><![CDATA[<div></div><div style="padding:0 6px;white-space:pre;line-height:130%;">


<div style="padding:0px 6px;line-height:130%;"><span style="color:#a71d5d;">Sub</span> 로또645_회차별_추첨결과()</div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> URL <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, IE <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, T <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span></div><div style="padding:0px 6px;line-height:130%;">    Application.ScreenUpdating <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">0</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Set</span> IE <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"WinHttp.WinHttpRequest.5.1"</span>)</div><div style="padding:0px 6px;line-height:130%;">    URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"<a href="https://dhlottery.co.kr/gameResult.do?" rel="nofollow">https://dhlottery.co.kr/gameResult.do?</a>"</span></div><div style="padding:0px 6px;line-height:130%;">    URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"method=allWinExel&amp;nowPage="</span></div><div style="padding:0px 6px;line-height:130%;">    URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> URL <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"&amp;drwNoStart=1&amp;drwNoEnd=65535"</span></div><div style="padding:0px 6px;line-height:130%;">    With IE</div><div style="padding:0px 6px;line-height:130%;">        .Open <span style="color:#63a35c;">"GET"</span>, URL</div><div style="padding:0px 6px;line-height:130%;">        .setRequestHeader <span style="color:#63a35c;">"Host"</span>, <span style="color:#63a35c;">"dhlottery.co.kr"</span></div><div style="padding:0px 6px;line-height:130%;">        .send: .waitForResponse: DoEvents</div><div style="padding:0px 6px;line-height:130%;">        T <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> .responseText</div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">End</span> With</div><div style="padding:0px 6px;line-height:130%;">    With CreateObject(<span style="color:#63a35c;">"new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}"</span>)</div><div style="padding:0px 6px;line-height:130%;">        .SetText T: .PutInClipboard</div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">End</span> With</div><div style="padding:0px 6px;line-height:130%;">    Cells.Clear: ActiveSheet.Paste Destination:<span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span>[A1]</div><div style="padding:0px 6px;line-height:130%;">    Columns(<span style="color:#63a35c;">"D:M"</span>).Delete Shift:<span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span>xlToLeft</div><div style="padding:0px 6px;line-height:130%;">    Cells.EntireColumn.AutoFit</div><div style="padding:0px 6px;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0px 6px;line-height:130%;"> </div></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-02-16T06:24:15+09:00</dc:date>
</item>


<item>
<title>[vba] 가위, 바위, 보 게임</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=136</link>
<description><![CDATA[<div></div><p><br /></p><p><br /></p><p><span style="font-size:12pt;">지식인 답변하면서 잠깐 만들어 봤습니다.</span></p><p><span style="font-size:12pt;">기획력이 부족해서 ....</span></p><p><br /></p><p><br /></p><p><img src="../../../data/editor/2210/0c10c0d0f383c338144a996f6c17a753_1665911905_6336.PNG" title="0c10c0d0f383c338144a996f6c17a753_1665911905_6336.PNG" alt="0c10c0d0f383c338144a996f6c17a753_1665911905_6336.PNG" /><br style="clear:both;" /> </p><p><br /></p><div style="padding:0 6px;white-space:pre;line-height:130%;">Option Explicit</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> Declare Function SetTimer Lib <span style="color:#63a35c;">"user32"</span> (<span style="color:#a71d5d;">ByVal</span> hWnd <span style="color:#a71d5d;">As</span> Long, <span style="color:#a71d5d;">ByVal</span> nIDEvent <span style="color:#a71d5d;">As</span> Long, <span style="color:#a71d5d;">ByVal</span> uElapse <span style="color:#a71d5d;">As</span> Long, <span style="color:#a71d5d;">ByVal</span> lpTimerFunc <span style="color:#a71d5d;">As</span> Long) <span style="color:#a71d5d;">As</span> Long</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> Declare Function KillTimer Lib <span style="color:#63a35c;">"user32"</span> (<span style="color:#a71d5d;">ByVal</span> hWnd <span style="color:#a71d5d;">As</span> Long, <span style="color:#a71d5d;">ByVal</span> nIDEvent <span style="color:#a71d5d;">As</span> Long) <span style="color:#a71d5d;">As</span> Long</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">Const TIMER_INTERVAL <span style="color:#a71d5d;">As</span> Long <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">100</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">Const TIMER_ID <span style="color:#a71d5d;">As</span> Long <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">3100</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> rndValues <span style="color:#a71d5d;">As</span> Variant</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> userValue <span style="color:#a71d5d;">As</span> Integer</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> comIndex <span style="color:#a71d5d;">As</span> Integer</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> myValue <span style="color:#a71d5d;">As</span> Integer</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> tmMethod()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#999999;">'INTERVAL = 100 이므로 10회 당 약 1초</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#999999;">'// 타이머의 정확도는 INTERVAL과 tmMethod 진입 횟수로 조절</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> okMethod()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Stop_Timer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> comValue <span style="color:#a71d5d;">As</span> Integer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> ckValue <span style="color:#a71d5d;">As</span> Integer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    comIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> comIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    comValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> rndValues(comIndex)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Select Case userValue</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Case <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            Select Case comValue</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">1</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">2</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">3</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">3</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">2</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">End</span> Select</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Case <span style="color:#0099cc;">2</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            Select Case comValue</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">1</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">2</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">2</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">3</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">3</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">End</span> Select</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Case <span style="color:#0099cc;">3</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            Select Case comValue</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">1</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">3</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">2</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">2</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Case <span style="color:#0099cc;">3</span>: ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">End</span> Select</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> Select</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> ckValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">2</span> <span style="color:#a71d5d;">Then</span> myValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> myValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Label1.Caption <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Choose(ckValue, <span style="color:#63a35c;">"무"</span>, <span style="color:#63a35c;">"승"</span>, <span style="color:#63a35c;">"패"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Label2.Caption <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Choose(comValue, <span style="color:#63a35c;">"가위"</span>, <span style="color:#63a35c;">"바위"</span>, <span style="color:#63a35c;">"보"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Caption <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> comIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> <span style="color:#63a35c;">"회 승률 "</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> Format((myValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">/</span> comIndex) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">*</span> <span style="color:#0099cc;">100</span>, <span style="color:#63a35c;">"0.00"</span><span style="color:#63a35c;">"%"</span><span style="color:#63a35c;">""</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    cmdEnabled</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> CommandButton1_Click()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    ReDim rndValues(<span style="color:#0099cc;">1</span> <span style="color:#a71d5d;">To</span> <span style="color:#0099cc;">45</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> i <span style="color:#a71d5d;">As</span> Integer, n <span style="color:#a71d5d;">As</span> Integer, x <span style="color:#a71d5d;">As</span> Integer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">For</span> i <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span> <span style="color:#a71d5d;">To</span> <span style="color:#0099cc;">3</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">For</span> n <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span> <span style="color:#a71d5d;">To</span> <span style="color:#0099cc;">15</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            x <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> x <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> <span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            rndValues(x) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> i</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Next</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Next</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    rndValues <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> RandData(rndValues): rndValues <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> RandData(rndValues)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    comIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">0</span>: myValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">0</span>: cmdEnabled</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">'    Start_Timer    '// 사용자의 입력을 체크할려면 타이머를 이용</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> cmdEnabled()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    CommandButton2.Enabled <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> comIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span> <span style="color:#0099cc;">45</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    CommandButton3.Enabled <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> comIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span> <span style="color:#0099cc;">45</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    CommandButton4.Enabled <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> comIndex <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span> <span style="color:#0099cc;">45</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">Function RandData(<span style="color:#a71d5d;">ByVal</span> dv <span style="color:#a71d5d;">As</span> Variant) <span style="color:#a71d5d;">As</span> Variant</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> j <span style="color:#a71d5d;">As</span> Long, t <span style="color:#a71d5d;">As</span> Variant, i <span style="color:#a71d5d;">As</span> Long</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">For</span> i <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> UBound(dv) <span style="color:#a71d5d;">To</span> LBound(dv) Step <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span><span style="color:#0099cc;">1</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        j <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Application.RandBetween(LBound(dv), UBound(dv))</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        t <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> dv(i): dv(i) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> dv(j): dv(j) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> t</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Next</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    RandData <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> dv</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Function</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> CommandButton2_Click(): userValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">1</span>: okMethod: <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> CommandButton3_Click(): userValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">2</span>: okMethod: <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> CommandButton4_Click(): userValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0099cc;">3</span>: okMethod: <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Sub</span> Start_Timer()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Stop_Timer</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    SetTimer Application.hWnd, TIMER_ID, TIMER_INTERVAL, AddressOf tmMethod</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Sub</span> Stop_Timer()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    KillTimer Application.hWnd, TIMER_ID</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    Application.StatusBar <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">False</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2022-10-16T18:20:52+09:00</dc:date>
</item>


<item>
<title>[vba] 활성화된 엑셀창의 선택한 셀(Selection) / Selection 오류시 / TextBox를 활용한 지정한 영역 한글자씩 입력받기</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=135</link>
<description><![CDATA[<div></div><p><span style="color:rgb(255,0,0);font-family:'se-nanumgothic', nanumgothic, sans-serif, Meiryo;font-size:18pt;background-color:rgb(255,255,255);">ActiveWindow.ActiveCell</span> </p><p><span style="color:rgb(255,0,0);font-family:'se-nanumgothic', nanumgothic, sans-serif, Meiryo;font-size:18pt;background-color:rgb(255,255,255);"><br /></span></p><p><span style="color:rgb(172,172,172);font-family:'se-nanumgothic', nanumgothic, sans-serif, Meiryo;font-size:14pt;background-color:rgb(255,255,255);"><b>활용예:)</b></span></p>








<div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;"><br /></span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;"><img src="../../../data/editor/2210/0c10c0d0f383c338144a996f6c17a753_1665911452_2629.png" title="0c10c0d0f383c338144a996f6c17a753_1665911452_2629.png" alt="0c10c0d0f383c338144a996f6c17a753_1665911452_2629.png" /><br style="clear:both;" /> </span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;"><br /></span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> TextBox1_Change()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Dim</span> T <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, C <span style="color:#a71d5d;">As</span> Range</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    T <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Mid(TextBox1, <span style="color:#0099cc;">1</span>, <span style="color:#0099cc;">1</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Set</span> C <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> ActiveWindow.ActiveCell</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> Application.Intersect(Range(<span style="color:#63a35c;">"B3:I20"</span>), C) Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span> Exit <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> Len(C) <span style="color:#a71d5d;">Then</span> C.<span style="color:#a71d5d;">Next</span>.Activate: <span style="color:#a71d5d;">Set</span> C <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> ActiveWindow.ActiveCell</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> Application.Intersect(Range(<span style="color:#63a35c;">"B3:I20"</span>), C) Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span> Cells(C.Row <span style="color:#0086b3;"></span><span style="color:#a71d5d;">+</span> <span style="color:#0099cc;">1</span>, <span style="color:#0099cc;">2</span>).Activate</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    ActiveWindow.ActiveCell <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> T</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    TextBox1.Activate</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    TextBox1 <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Mid(TextBox1, <span style="color:#0099cc;">2</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> Worksheet_SelectionChange(<span style="color:#a71d5d;">ByVal</span> Target <span style="color:#a71d5d;">As</span> Range)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> Target.CountLarge <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span> <span style="color:#0099cc;">1</span> <span style="color:#a71d5d;">Then</span> Exit <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> <span style="color:#a71d5d;">Not</span> Application.Intersect(Range(<span style="color:#63a35c;">"B3:I20"</span>), Target) Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span> TextBox1.Activate</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;"><br /></span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;"><br /></span></div><iframe width="544" height="306" scrolling="no" title="NaverVideo"></iframe><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2022-10-16T18:11:24+09:00</dc:date>
</item>


<item>
<title>[vba] [펌] Cells.Count 와 Cells.CountLarge 메서드(method)의 차이</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=134</link>
<description><![CDATA[<div></div><p><br /></p><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">If</span> Target.CountLarge <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span> <span style="color:#0099cc;">1</span> <span style="color:#a71d5d;">Then</span> Exit <span style="color:#a71d5d;">Sub</span></div><p><br /></p><p><br /></p><div align="left" style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"><img src="../../../data/editor/2210/0c10c0d0f383c338144a996f6c17a753_1665905411_8744.jpg" title="0c10c0d0f383c338144a996f6c17a753_1665905411_8744.jpg" alt="0c10c0d0f383c338144a996f6c17a753_1665905411_8744.jpg" /><br style="clear:both;" /> </div><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);">엑셀 2003버전 이하에서는 즉석창(Immediate Pane)에서 ? Cells.Count 라고 입력하고 엔터치면, </p><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);">에러가 발생하지 않고 전체 셀의 개수를 보여주었지만, 2007버전 이상에서는 아래의 에러가 발생.</p><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"><br /></p><div align="left" style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"><img src="../../../data/editor/2210/0c10c0d0f383c338144a996f6c17a753_1665905412_5637.jpg" title="0c10c0d0f383c338144a996f6c17a753_1665905412_5637.jpg" alt="0c10c0d0f383c338144a996f6c17a753_1665905412_5637.jpg" /><br /> <br />왜그런지 몰랐는데 이유를 찾았다. Count는 데이터 타입이 Long이다. Long은 4바이트로</div><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);">-2,147,483,648 에서 2,147,483,647 까지의 숫자를 표시하는데 엑셀 2007 버전에서는 한 시트의 전체 셀의 개수가 무려 17,179,869,184 개이다. 그러므로 Count 로는 전체셀의 개수를 표시할 수 없다. 그래서 2007에서 새로 도입된 method가 <span style="color:rgb(255,0,0);">CountLarge</span>이다. 즉석창에서 ? Cells.CountLarge라고 입력시 아래와 같이 에러없이 전체 셀의 개수를 보여준다.</p><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"><br /></p><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"> <img src="../../../data/editor/2210/0c10c0d0f383c338144a996f6c17a753_1665905413_0195.jpg" title="0c10c0d0f383c338144a996f6c17a753_1665905413_0195.jpg" style="font-family:'돋움', Dotum, Helvetica, sans-serif;font-size:12px;" alt="0c10c0d0f383c338144a996f6c17a753_1665905413_0195.jpg" /></p><div align="left" style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"><br /></div><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"> </p><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);">결론적으로, "일반적으로는 기존의 Count method를 사용하여도 무방하지만 2007버전 이상에서 한 시트에서 대략 2000개 이상의 열을 count할 시(또는, 10개의 시트 x 200개 이상의 열)에는 Count 대신 CountLarge 메써드를 사용해야 한다."는 것.</p><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"><br /></p><p style="text-align:right;font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);" align="right"><span style="font-size:7pt;color:rgb(172,172,172);">출처 : h t t p s : / / b l o g . n a v e r . c o m / r o s a 0 1 8 9 / 6 0 1 3 8 8 8 9 2 7 3</span></p><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2022-10-16T16:32:53+09:00</dc:date>
</item>


<item>
<title>CDO 클래스 사용 smtp 메일 보내기</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=133</link>
<description><![CDATA[<div></div><table class="__se_tbl_ext" width="100%" border="0" cellpadding="10" cellspacing="1" style="margin:0px;padding:0px;font-size:14px;line-height:20px;font-family:'돋움';border-collapse:collapse;color:rgb(102,102,102);background-color:rgb(209,209,209);"><tbody><tr><td class="tdStyle" style="margin:0px;padding:0px;background-color:rgb(239,239,239);"><table width="760" border="0" align="center" cellpadding="0" cellspacing="0" style="margin:0px auto;padding:0px;line-height:20px;font-family:'Helvetica-Light', 'HelveticaNeue-Light', 'Helvetica Neue Light', '나눔고딕', nanumgothic, AppleSDGothicNeo, 'malgun gothic', '맑은 고딕', sans-serif;border-collapse:collapse;"><tbody><tr><td colspan="2" valign="top" style="margin:0px;padding:0px;"><p><span>'아래코드는 이석재님께서 작성하신겁니다</span></p><p><span>'일전에는 위 코드가 먹혀서 이메일을 보냈는데요</span></p><p><span>'오늘 하니깐 에러가 발생을 합니다.</span></p><p><span></span> </p><p><span>'네이버에서 smtp를 설정했구요</span></p><p><span>'보내기 에서 에러가 나는데 해결 방안이 없을까요?</span></p><p><span></span> </p><p><span></span> </p><p><span></span> </p><p><span>Option Explicit</span></p><p><span>Private Const cdoSendUsingMethod = "</span><a href="http://schemas.microsoft.com/cdo/configuration/sendusing" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">http://schemas.microsoft.com/cdo/configuration/sendusing</a><span>"</span><br /><span>Private Const cdoSendUsingPort = 2</span><br /><span>Private Const cdoSMTPServer = "</span><a href="http://schemas.microsoft.com/cdo/configuration/smtpserver" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">http://schemas.microsoft.com/cdo/configuration/smtpserver</a><span>"</span><br /><span>Private Const cdoSMTPServerPort = "</span><a href="http://schemas.microsoft.com/cdo/configuration/smtpserverport" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">http://schemas.microsoft.com/cdo/configuration/smtpserverport</a><span>"</span><br /><span>Private Const cdoSMTPConnectionTimeout = "</span><a href="http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout</a><span>"</span><br /><span>Private Const cdoSMTPAccountName = "</span><a href="http://schemas.microsoft.com/cdo/configuration/smtpaccountname" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">http://schemas.microsoft.com/cdo/configuration/smtpaccountname</a><span>"</span><br /><span>Private Const cdoSMTPAuthenticate = "</span><a href="http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">http://schemas.microsoft.com/cdo/configuration/smtpauthenticate</a><span>"</span><br /><span>Private Const cdoBasic = 1</span><br /><span>Private Const cdoSendUserName = "</span><a href="http://schemas.microsoft.com/cdo/configuration/sendusername" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">http://schemas.microsoft.com/cdo/configuration/sendusername</a><span>"</span><br /><span>Private Const cdoSendPassword = "</span><a href="http://schemas.microsoft.com/cdo/configuration/sendpassword" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">http://schemas.microsoft.com/cdo/configuration/sendpassword</a><span>"</span></p><p><span>Private Const strSMTP As String = "smtp.naver.com"</span><br /><span>Private Const strID As String = "*******"</span><br /><span>Private Const strPW As String = "********"</span></p><p> </p><p><span style="color:rgb(255,0,0);">'## 실행테스트...</span><br /><span>Sub Test()</span><br /><span>    If CDOSendMail("</span><a href="mailto:foxmotor@nate.com" target="_blank" style="color:rgb(102,102,102);" rel="noreferrer noopener">foxmotor@nate.com</a><span>", "</span><a href="mailto:1234@Hotmail.com" target="_blank" style="color:rgb(102,102,102);" rel="noreferrer noopener">1234@Hotmail.com</a><span>", "테스트", "ㅎㅎㅎ", "C:\aaa.txt") Then</span><br /><span>        MsgBox "메세지 전송 성공"</span><br /><span>    End If</span><br /><span>End Sub</span></p><p> </p><p><span style="color:rgb(255,0,0);"><span>'========================================================================================================</span><br /><span>' Procedure : CDOSendMail</span><br /><span>' DateTime  : 2007-10-05 14:19</span><br /><span>' Author    : 이석재 (</span><a href="http://cafe.naver.com/xlsvba/380" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener"><span style="color:rgb(58,50,195);"><span style="font-weight:600;"><span>http://cafe.naver.com/xlsvba/380</span></span></span></a></span><a href="http://cafe.naver.com/xlsvba" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener"><span style="color:rgb(58,50,195);"><em></em></span></a><span style="color:rgb(255,0,0);"><span style="color:rgb(58,50,195);"><em><span>)</span></em></span><br /><span>' Param     : mailto - 수신자(s)</span><br /><span>'             mailfrom - 송신자(s)</span><br /><span>'             mailsubject- 제목(s)</span><br /><span>'             mailbody - 내용(s)</span><br /><span>'             mailattatch - 첨부파일(s)</span><br /><span>'=========================================================================================================</span><br /></span><span>Private Function CDOSendMail(mailto As String, _</span><br /><span>                       mailfrom As String, _</span><br /><span>                       mailsubject As String, _</span><br /><span>                       mailbody As String, _</span><br /><span>                       mailattatch As String) As Boolean</span><br /><span>                       </span><br /><span>  Dim oMsg   As Object</span><br /><span>  Dim oConf  As Object</span><br /><span>   </span><br /><span>    On Error GoTo CDOSendMail_Error</span></p><p><span>    Set oMsg = CreateObject("CDO.Message")              </span><span style="color:rgb(255,0,0);"><span>'## CDO.Message 개체에 대한 참조를 작성하고 반환</span><br /></span><span>    Set oConf = CreateObject("CDO.Configuration")       </span><span style="color:rgb(255,0,0);"><span>'## CDO.Configuration 개체에 대한 참조를 작성하고 반환</span><br /></span><span>    </span><br /><span>    With oConf.Fields</span><br /><span>        </span><br /><span>        oConf.Load -1</span><br /><span>        </span><br /><span>        .Refresh                                       </span><span style="color:rgb(255,0,0);"> '## oConf.Fields Option 초기화</span><br /><span>        .Item(cdoSendUsingMethod) = 2                  </span><span style="color:rgb(255,0,0);"><span> '## oConf.Fields Option index : 3 (내부계정-1, 외부계정-2)</span><br /></span><span>        .Item(cdoSMTPServer) = strSMTP            </span><span style="color:rgb(255,0,0);">'## oConf.Fields Option index : 6 (smtp 계정주소)</span><br /><span>        .Item(cdoSMTPConnectionTimeout) = 10           </span><span style="color:rgb(255,0,0);"> '## oConf.Fields Option index : 7 (Connection 대기시간제한)</span><br /><span>        .Item(cdoSMTPAuthenticate) = cdoBasic           </span><span style="color:rgb(255,0,0);">'## oConf.Fields Option index : 8 (보안설정 메일서버에 한해)</span><br /><span>        .Item(cdoSendUserName) = strID                 </span><span style="color:rgb(255,0,0);">'## oConf.Fields Option index : 9 (ID)</span><br /><span>        .Item(cdoSendPassword) = strPW                  </span><span style="color:rgb(255,0,0);"><span>'## oConf.Fields Option index : 10 (PW)</span><br /></span><span>    </span><span style="color:rgb(255,0,0);">    '.Item(cdoURLGetLatestVersion) = True           '## oConf.Fields Option index : 11</span><br /><span>        .Update                                         </span><span style="color:rgb(255,0,0);">'## oConf.Fields Option Update</span><br /><span>    End With</span></p><p><span>    With oMsg</span><br /><span>        Set .Configuration = oConf</span><br /><span>        </span><br /><span>        If InStr(1, mailto, "@", vbTextCompare) Then</span><br /><span>            .To = mailto                                    </span><span style="color:rgb(255,0,0);">'## 수신주소</span><br /><span>            .BodyPart.Charset = "ks_c_5601-1987"            </span><span style="color:rgb(255,0,0);"><span>'## 한글설정</span><br /></span><span>            .From = mailfrom                                </span><span style="color:rgb(255,0,0);"><span>'## 송신주소</span><br /></span><span>            .Subject = mailsubject                         </span><span style="color:rgb(255,0,0);"><span> '## 제목</span><br /></span><span>            .TextBody = mailbody                            </span><span style="color:rgb(255,0,0);"><span>'## 내용</span><br /></span><span>            .AutoGenerateTextBody = False                  </span><span style="color:rgb(255,0,0);"> '## 바디설정:텍스트</span><br /><span>            .AddAttachment mailattatch                   </span><span style="color:rgb(255,0,0);"> '## 첨부파일</span><br /><span style="color:rgb(255,0,0);">'            .HTMLBodyPart.Charset = "ks_c_5601-1987"        '## 바디설정:HTML</span><br /><span>            .send                                           </span><span style="color:rgb(255,0,0);">'## 보내기</span></p><p><span style="color:rgb(255,0,0);">            </span><span style="color:rgb(70,70,70);"><span style="color:rgb(37,37,37);"><span>CDOSendMail = True</span></span><br /></span><span>        End If</span><br /><span>    End With</span><br /><span>        </span><br /><span>CDOSendMail_Error:</span></p><p><span>    Call Err_Message("CDOSendMail", "modDGR")</span></p><p><span>    If Not oMsg Is Nothing Then</span><br /><span>        Set oMsg = Nothing                                  </span><span style="color:rgb(255,0,0);"><span>'## 메모리제거</span><br /></span><span>    End If</span><br /><span>    </span><br /><span>    If Not oMsg Is Nothing Then</span><br /><span>        Set oConf = Nothing                                 </span><span style="color:rgb(255,0,0);"><span>'## 메모리제거</span><br /></span><span>    End If</span></p><p><span>End Function</span></p><p><span></span> </p><p><span style="color:rgb(255,0,0);"><span>'================================================================================</span><br /><span>' Procedure   : Err_Message</span><br /><span>' DateTime    : 2007-06-26 17:05</span><br /><span>' Author      : 서은아빠 (</span></span><a href="http://cafe.naver.com/xlsvba" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener"><span style="color:rgb(58,50,195);"><em>http://cafe.naver.com/xlsvba</em></span></a><span style="color:rgb(255,0,0);"><span>)</span><br /><span>' Purpose     : 오류메세지 처리(모듈위치, 프로시저(함수)명 리턴</span><br /><span>' Param       : strFuncName - 해당 함수나 프로시저명</span><br /><span>'             : strModuleName - 프로시저를 포함하고 있는 모듈명</span><br /><span>'================================================================================</span></span><br /><span>Private Sub Err_Message(ByVal strFuncName As String, ByVal strModuleName As String)</span><br /><span>  </span><br /><span>  If Err.Number &lt;&gt; 0 Then</span><br /><span>      MsgBox "오류가 발생하였습니다." &amp; vbCrLf &amp; _</span><br /><span>             "오류의 내용은 " &amp; Err.Description &amp; vbCrLf &amp; _</span><br /><span>             "오류의 위치는 Function(Procedure) : " &amp; strFuncName &amp; "Module : " &amp; strModuleName, vbCritical</span><br /><span>  End If</span><br /><span> </span><br /><span>  On Error GoTo 0</span><br /><span> </span><br /><span>End Sub</span></p><div><p><span style="font-weight:600;">[출처]</span> <a href="http://cafe.naver.com/xlsvba/380" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">CDO 메일보내기 (VB, Excel VBA, .NET &amp; SQL)</a> <span>|</span><span style="font-weight:600;">작성자</span> <a href="http://cafe.naver.com/xlsvba.cafe?iframe_url=/CafeMemberNetworkView.nhn%3Fm=view%26memberid=foxmotor" target="_blank" style="color:rgb(102,102,102);" rel="nofollow noreferrer noopener">서은아빠</a></p></div><p> </p></td></tr><tr><td colspan="2" style="margin:0px;padding:0px;"></td></tr><tr valign="bottom" style="font-weight:bold;"><td height="30" colspan="2" style="margin:0px;padding:0px;"><table border="0" cellspacing="0" cellpadding="0" width="100%" style="margin:0px;padding:0px;line-height:20px;border-collapse:collapse;"><tbody><tr valign="bottom"><td width="100%" style="margin:0px;padding:0px;"></td><td align="right" style="margin:0px;padding:0px;"><img src="https://dthumb-phinf.pstatic.net/?src=%22http%3A%2F%2Fimage.devpia.com%2FNewDevpia%2Fmaeul%2Fdiscuss%2Fdis_btn_best.gif%22&amp;type=w2" alt="" class="fx _postImage" style="border:0px;vertical-align:top;" /></td><td style="margin:0px;padding:0px;"></td><td style="margin:0px;padding:0px;"></td><td style="margin:0px;padding:0px;"></td><td style="margin:0px;padding:0px;"></td><td style="margin:0px;padding:0px;"><img src="https://dthumb-phinf.pstatic.net/?src=%22http%3A%2F%2Fimage.devpia.com%2FMAEUL%2Fbg_white%2Fbtn_reply.gif%22&amp;type=w2" alt="" class="fx _postImage" style="border:0px;vertical-align:top;" /></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table><table class="__se_tbl_ext" cellpadding="0" cellspacing="0" border="0" width="100%" style="margin:0px;padding:0px;font-size:14px;line-height:20px;font-family:'돋움';border-collapse:collapse;color:rgb(102,102,102);background-color:rgb(239,239,239);"><tbody><tr><td style="margin:0px;padding:0px;"><table width="782" border="0" cellspacing="0" cellpadding="0" style="margin:0px;padding:0px;line-height:20px;font-family:'Helvetica-Light', 'HelveticaNeue-Light', 'Helvetica Neue Light', '나눔고딕', nanumgothic, AppleSDGothicNeo, 'malgun gothic', '맑은 고딕', sans-serif;border-collapse:collapse;"><tbody><tr><td height="1" style="margin:0px;padding:0px;"></td></tr><tr><td style="margin:0px;padding:0px;"><table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#D1D1D1" style="margin:0px;padding:0px;line-height:20px;border-collapse:collapse;"><tbody><tr><td align="center" bgcolor="#ededed" style="margin:0px;padding:0px;"><table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF" style="margin:0px;padding:0px;line-height:20px;border-collapse:collapse;"><tbody><tr><td height="60" align="center" valign="top" bgcolor="#ededed" style="margin:0px;padding:0px 5px 5px;"><table width="100%" border="0" cellspacing="0" cellpadding="0" style="margin:0px;padding:0px;line-height:20px;border-collapse:collapse;"><tbody><tr><td width="11%" rowspan="2" style="margin:0px;padding:0px;"><img src="https://dthumb-phinf.pstatic.net/?src=%22http%3A%2F%2Fimage.devpia.com%2FNewDevpia%2Fmaeul%2Fqna%2Ficon_BestAnswer.gif%22&amp;type=w2" alt="" class="fx _postImage" style="border:0px;vertical-align:top;" /></td><td width="77%" valign="bottom" align="left" style="margin:0px;padding:0px;"><span style="color:rgb(244,85,17);"><span style="font-weight:600;">[채택답변]</span></span> <span style="font-weight:600;font-family:'AppleSDGothicNeo-Bold';">참조Microsoft CDO for Windows 2000 Library<br /></span></td><td width="12%" align="center" rowspan="2" style="margin:0px;padding:0px;"><span style="font-weight:600;color:rgb(244,85,17);">0</span><br /><img src="https://dthumb-phinf.pstatic.net/?src=%22http%3A%2F%2Fimage.devpia.com%2FNewDevpia%2Fmaeul%2Fqna%2Fbtn_BestAnswer.gif%22&amp;type=w2" alt="" class="fx _postImage" style="border:0px;vertical-align:top;" /></td></tr><tr><td class="font_small" align="left" style="margin:0px;padding:0px;font-size:11px;color:rgb(143,143,143);">2010-10-06 오후 4:31:15</td></tr></tbody></table></td></tr><tr><td height="35" align="left" style="margin:0px;padding:10px 5px 5px 15px;"><table width="100%" border="0" cellspacing="0" cellpadding="0" style="margin:0px;padding:0px;line-height:20px;border-collapse:collapse;"><tbody><tr><td width="15%" valign="top" style="margin:0px;padding:0px;"><img src="https://dthumb-phinf.pstatic.net/?src=%22http%3A%2F%2Fimage.devpia.com%2Fdevpia%2Fforum%2Femo-01.gif%22&amp;type=w2" alt="" class="fx _postImage" style="border:0px;vertical-align:top;" /> <span style="color:rgb(244,85,17);"><span style="font-weight:600;">질문자 인사 :</span></span></td><td width="85%" style="margin:0px;padding:0px;">고맙습니다.<br /><br />한번 실험해보겠습니다.</td></tr></tbody></table></td></tr><tr><td height="1" style="background-image:url(&quot;http://image.devpia.com/MAEUL/bg_white/right_dot.gif&quot;);margin:0px;padding:0px;"></td></tr><tr><td class="font_small" align="left" style="margin:0px;padding:0px;font-size:11px;color:rgb(143,143,143);"><table width="760" border="0" cellpadding="0" cellspacing="0" style="margin:0px;padding:0px;font-size:12px;line-height:18px;border-collapse:collapse;color:rgb(102,102,102);"><tbody><tr class="font_small" style="font-size:11px;color:rgb(143,143,143);"><td height="40" style="margin:0px;padding:0px;">  왜구랭</td><td align="right" style="margin:0px;padding:0px;">번호: 306341  </td></tr></tbody></table></td></tr><tr><td align="left" style="margin:0px;padding:10px 10px 10px 15px;"><p>    Dim iMsg As CDO.Message<br />    Dim iConf As CDO.Configuration<br />    Dim strbody As String</p><p>    Set iMsg = New CDO.Message<br />    Set iConf = New CDO.Configuration</p><p>        iConf.Load cdoDefaults     ' CDO Source Defaults<br />        With iConf.Fields<br />            .Item(cdoSMTPServer) = "" ' SMTP 서버<br />            .Item(cdoSendUsingMethod) = cdoSendUsingPort ' 보내는 방법을 어떤것을 사용할 건지 선택, 포트, 픽업<br />            .Item(cdoSMTPServerPort) = ' SMTP 서버 포트<br />            .Item(cdoSMTPUseSSL) = True ' smtp서버에서 ssl 사용 유무<br />            .Item(cdoSendUserName) = "" ' 계정 ID<br />            .Item(cdoSendPassword) = "" ' 계정 암호<br />            .Item(cdoSMTPAuthenticate) = 1<br />            .Update<br />        End With</p><p>    strbody = "Hi there"</p><p>    With iMsg<br />        Set .Configuration = iConf ' SMTP 서버를 설정한 개체를 할당한다.<br />        .To = "" ' 메일을 받을 사람의 메일 주소<br />        .From = "" ' 보내는 사람 메일 주소 즉 사용하는 SMTP에 있는 메일 계정<br />        .Subject = "New figures" ' 메일 제목<br />        .TextBody = strbody ' 메일 내용<br />        .Send ' 메일을 보낸다.<br />    End With<br />    Set iConf = Nothing<br />    Set iMsg = Nothing</p></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"> </p><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);"><br /></p><p style="font-family:sans-serif;font-size:16.002px;background-color:rgb(255,255,255);">출처: <a href="http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=47&amp;MAEULNO=19&amp;no=306337&amp;ref=306337" target="_blank" style="color:rgb(0,95,193);" rel="nofollow noreferrer noopener">http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=47&amp;MAEULNO=19&amp;no=306337&amp;ref=306337</a></p><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2022-03-17T17:31:30+09:00</dc:date>
</item>


<item>
<title>﻿[vba] Variant 초기화(Erase)﻿</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=130</link>
<description><![CDATA[<div></div><div>Sub program1472()</div><div>    Dim V As Variant '// Variant 변수 선언</div><div>    ReDim V(1 To 1) '// Variant 변수 사용</div><div>    Erase V '// Variant 변수 초기화</div><div>End Sub</div><div><br /></div><div><table align="right" border="0"><tbody><tr><td></td></tr></tbody></table><h1><a></a><span style="color:rgb(255,0,0);">Erase 문</span></h1>


<p class="ALNSR">참고     예제     <a style="color:rgb(210,210,210);">제품별 정보</a></p>


<p class="T">고정 크기 <a>배열</a>의 요소를 다시 초기화하고 동적 배열 


저장 공간을 해제합니다.</p>


<p><b>구문</b></p>


<p class="SYN"><b>Erase</b> <i>arraylist</i></p>


<p class="T">필수적인 요소인 <i>arraylist</i> <a>인수</a>는 지워질 배열 <a>변수</a>로 하나 이상의 쉼표로 구분됩니다.</p>


<p><b>참고</b></p>


<p class="T"><b>Erase</b>는 보통의 고정 크기 배열이냐 동적 배열이냐에 따라 다르게 작동합니다. <b>Erase</b>는 고정 


크기 배열에 대해서는 메모리를 회복하지 않습니다. <b>Erase</b>는 다음과 같이 고정 배열의 요소를 설정합니다.</p>


<table cellspacing="4" cellpadding="4"><tbody><tr valign="top"><th width="29%">배열 형식</th>


<th width="71%">고정 배열 요소에서 Erase의 효과</th></tr><tr valign="top"><td class="T" width="29%">고정 수 배열</td>


<td class="T" width="71%">각 요소를 0으로 설정합니다.</td></tr><tr valign="top"><td class="T" width="29%">고정 문자 배열(가변 길이)</td>


<td class="T" width="71%">각 요소를 길이가 0인 문자열("")로 설정합니다.</td></tr><tr valign="top"><td class="T" width="29%">고정 문자 배열(고정 길이)</td>


<td class="T" width="71%">각 요소를 0으로 설정합니다.</td></tr><tr valign="top"><td class="T" width="29%">고정 <a>Variant</a> 


배열</td>


<td class="T" width="71%">각 요소를 <a>Empty</a>로 


설정합니다.</td></tr><tr valign="top"><td class="T" width="29%"><a>사용자 정의 형식</a> 


배열</td>


<td class="T" width="71%">각 요소를 개별적인 변수인 것처럼 설정합니다.</td></tr><tr valign="top"><td class="T" width="29%">개체 배열</td>


<td class="T" width="71%">각 요소를 특수값인 <b>Nothing</b>으로 


설정합니다.</td></tr></tbody></table><br /><p class="T"><b>Erase</b>는 동적 배열로 사용된 메모리를 복구합니다. 프로그램이 동적 배열을 다시 참조할 수 있으려면 먼저 


<b>ReDim</b> 문을 사용하는 배열 변수의 차원을 다시 선언해야 합니다.</p></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2021-08-28T10:05:19+09:00</dc:date>
</item>


<item>
<title>[vba] JoinBytesArray 함수를 이용한 Byte 조인하기</title>
<link>http://assets.program1472.com/bbs/board.php?bo_table=TB_03&amp;amp;wr_id=129</link>
<description><![CDATA[<div></div><div class="colorscripter-code" style="color:#010101;font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;"></div><div style="color:rgb(1,1,1);background-color:rgb(250,250,250);margin:0px;padding:0px;line-height:15.6px;font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;"><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"><span style="color:rgb(153,153,153);">'// Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)</span></div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"><span style="color:rgb(167,29,93);">Private</span> Declare PtrSafe <span style="color:rgb(167,29,93);">Sub</span> CopyMemory Lib <span style="color:rgb(99,163,92);">"kernel32"</span> Alias <span style="color:rgb(99,163,92);">"RtlMoveMemory"</span> (pDest <span style="color:rgb(167,29,93);">As</span> Any, pSource <span style="color:rgb(167,29,93);">As</span> Any, <span style="color:rgb(167,29,93);">ByVal</span> cbLength <span style="color:rgb(167,29,93);">As</span> Long)</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"> </div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"> </div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"><span style="color:rgb(167,29,93);">Public</span> Function JoinBytesArray(ParamArray ByteArrays() <span style="color:rgb(167,29,93);">As</span> Variant) <span style="color:rgb(167,29,93);">As</span> Byte()</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">Dim</span> sizeArray <span style="color:rgb(167,29,93);">As</span> Variant, startIndex <span style="color:rgb(167,29,93);">As</span> Long, i <span style="color:rgb(167,29,93);">As</span> Integer</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">Dim</span> Buffer() <span style="color:rgb(167,29,93);">As</span> Byte, ByteArray() <span style="color:rgb(167,29,93);">As</span> Byte</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    ReDim sizeArray(<span style="color:rgb(0,153,204);">0</span> <span style="color:rgb(167,29,93);">To</span> UBound(ByteArrays))</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">For</span> i <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> <span style="color:rgb(0,153,204);">0</span> <span style="color:rgb(167,29,93);">To</span> UBound(ByteArrays)</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">        sizeArray(i) <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> UBound(ByteArrays(i))</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">Next</span></div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    </div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    startIndex <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> <span style="color:rgb(0,153,204);">0</span></div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    ReDim Buffer(WorksheetFunction.Sum(sizeArray) <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">+</span> UBound(sizeArray))</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">For</span> i <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> <span style="color:rgb(0,153,204);">0</span> <span style="color:rgb(167,29,93);">To</span> UBound(ByteArrays)</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">        ByteArray <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> ByteArrays(i)</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">        CopyMemory Buffer(startIndex), ByteArray(<span style="color:rgb(0,153,204);">0</span>), UBound(ByteArray) <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">+</span> <span style="color:rgb(0,153,204);">1</span></div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">        startIndex <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> startIndex <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">+</span> UBound(ByteArray) <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">+</span> <span style="color:rgb(0,153,204);">1</span></div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">Next</span></div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    JoinBytesArray <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> Buffer</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"><span style="color:rgb(167,29,93);">End</span> Function</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"> </div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"><span style="color:rgb(167,29,93);">Private</span> Function Sum(<span style="color:rgb(167,29,93);">ByVal</span> IntegerArray <span style="color:rgb(167,29,93);">As</span> Variant) <span style="color:rgb(167,29,93);">As</span> Long</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">Dim</span> i <span style="color:rgb(167,29,93);">As</span> Integer</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">For</span> i <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> <span style="color:rgb(0,153,204);">0</span> <span style="color:rgb(167,29,93);">To</span> UBound(IntegerArray)</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">        Sum <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> Sum <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">+</span> Val(IntegerArray(i))</div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(167,29,93);">Next</span></div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;">    <span style="color:rgb(153,153,153);">'// Range.Application.WorksheetFunction.Sum</span></div><div style="padding:0px 6px;white-space:pre;line-height:15.6px;"><span style="color:rgb(167,29,93);">End</span> Function</div><div> </div></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2021-08-09T14:07:41+09:00</dc:date>
</item>

</channel>
</rss>
