네트워커의 보안 티스토리

Excel_문자열_0.3v.exe














#SingleInstance
#NoEnv



Gui, Add, Button, x262 y25 w70 h20 gFilebtn, Browse
Gui, Add, text, x32 y29 w215 h40 vpathb, 


Gui, Add, Edit, x32 y99 w75 h20 vedit1, 
Gui, Add, Edit, x32 y129 w75 h20 vedit2, 
Gui, Add, Edit, x32 y159 w75 h20 vedit3, 
Gui, Add, Edit, x32 y189 w75 h20 vedit4, 
Gui, Add, Edit, x32 y219 w75 h20 vedit5, 
Gui, Add, Edit, x292 y99 w75 h20 vedit6,
Gui, Add, Edit, x292 y129 w75 h20 vedit7, 
Gui, Add, Edit, x292 y159 w75 h20 vedit8, 
Gui, Add, Edit, x292 y189 w75 h20 vedit9, 
Gui, Add, Edit, x292 y219 w75 h20 vedit10, 

Gui, Add, Text, x122 y102 w140 h20  vtext1, 
Gui, Add, Text, x122 y132 w140 h20 vtext2, 
Gui, Add, Text, x122 y162 w140 h20 vtext3, 
Gui, Add, Text, x122 y192 w140 h20 vtext4, 
Gui, Add, Text, x122 y222 w140 h20 vtext5, 
Gui, Add, Text, x382 y102 w140 h20 vtext6, 
Gui, Add, Text, x382 y132 w140 h20 vtext7, 
Gui, Add, Text, x382 y162 w140 h20 vtext8, 
Gui, Add, Text, x382 y192 w140 h20 vtext9, 
Gui, Add, Text, x382 y222 w140 h20 vtext10, 

Gui, Add, GroupBox, x20 y9 w330 h70 , 파일 선택(*.xlsx)
Gui, Add, GroupBox, x20 y79 w250 h170 ,
Gui, Add, GroupBox, x282 y79 w250 h170 , 

Gui, Add, Button, x72 y279 w60 h40 vStart gStart , 찾기
gui, font, s9
Gui, Add, Button, x182 y279 w60 h40 vSujung gSujung, 수정
Gui, Add, Button, x292 y279 w60 h40 vreset greset, 초기화
Gui, Add, Button, x412 y279 w60 h40  gclose, 종료
GuiControl,disable,Sujung, 
; Generated using SmartGUI Creator 4.0
Gui, Show, x1244 y235 h379 w550, Excel_문자열찾기_0.3v
Return

GuiClose:
Ex.Quit
ExitApp


Filebtn:
fileselectfile, path  ;### path변수에 파일경로저장.
Gui,Submit,nohide
Guicontrol,,pathb, %path%
return


Start:
Gui,Submit,nohide


if (path!="")
{
GuiControl,Disable,edit1,
GuiControl,Disable,edit2,
GuiControl,Disable,edit3,
GuiControl,Disable,edit4,
GuiControl,Disable,edit5,
GuiControl,Disable,edit6,
GuiControl,Disable,edit7,
GuiControl,Disable,edit8,
GuiControl,Disable,edit9,
GuiControl,Disable,edit10,
GuiControl,Disable,Start, 
GuiControl,Enable,Sujung, 
Ex := ComObjCreate("Excel.Application")
Ex := ComObjActive("Excel.Application")
Ex.workbooks.open(path)  ;### path변수에있는 경로 열기
Ex.visible := True ;### 엑셀파일 보이기
amount_of_sheets:=Ex.worksheets.count
a=1
b=1
Loop 9
{

someedit:=edit%a%
sometext=text%b%
if(someedit!="")
Loop %amount_of_sheets%
{
Ex.worksheets(A_index).Select
result:=Ex.worksheets(A_index).range("1:1000").Find(someedit)
first:=result.Address
sheetcount:=A_index
if (first!="")
{
GuiControl,,%sometext%, %A_index%번째 시트의 %first% 셀
Ex.worksheets(A_index).range(first).Interior.ColorIndex := 29  ; 찾은 셀의 색을 29(보라)로 설정
Loop
{
result:=Ex.ActiveSheet.range("1:1000").FindNext(result)
next:=result.Address
if (next == first)  ;지금 찾는 값과 전에 찾은 주소를 비교
{
break
}
else
{
GuiControl,,%sometext%, %sheetcount%번째 시트의 %next% 셀
Ex.ActiveSheet.range(next).Interior.ColorIndex := 29
}
}   ;Loop 끝나는 부분
if(sometext="")  ;만약에 찾은 값이 없어서 guicontrol이 안됐을 경우
{
GuiControl,,%sometext%, 없는데요 ㅡㅡ?
}
} ;if(first!="") 마치는부분
else
{

}

}

a:=a+1
b:=b+1
}

}

else
{
msgbox, 경로를 설정해주세요.
}
return

Sujung:
Ex.Quit
GuiControl,Disable,Sujung, 

GuiControl,Enable,edit1,
GuiControl,Enable,edit2,
GuiControl,Enable,edit3,
GuiControl,Enable,edit4,
GuiControl,Enable,edit5,
GuiControl,Enable,edit6,
GuiControl,Enable,edit7,
GuiControl,Enable,edit8,
GuiControl,Enable,edit9,
GuiControl,Enable,edit10,

sleep, 5000
GuiControl,Enable,Start,
return


reset:
Ex.Quit
GuiControl,Enable,Start,
GuiControl,Disable,Sujung, 
GuiControl,,text1, 
GuiControl,,text2, 
GuiControl,,text3, 
GuiControl,,text4, 
GuiControl,,text5, 
GuiControl,,text6, 
GuiControl,,text7, 
GuiControl,,text8, 
GuiControl,,text9, 
GuiControl,,text10, 
GuiControl,,edit1, 
GuiControl,,edit2, 
GuiControl,,edit3, 
GuiControl,,edit4, 
GuiControl,,edit5, 
GuiControl,,edit6, 
GuiControl,,edit7, 
GuiControl,,edit8, 
GuiControl,,edit9, 
GuiControl,,edit10, 
GuiControl,Enable,edit1,
GuiControl,Enable,edit2,
GuiControl,Enable,edit3,
GuiControl,Enable,edit4,
GuiControl,Enable,edit5,
GuiControl,Enable,edit6,
GuiControl,Enable,edit7,
GuiControl,Enable,edit8,
GuiControl,Enable,edit9,
GuiControl,Enable,edit10,

return
close:
Ex.Quit
ExitApp




###########################################################################


@0.1v


- 기초적인 기능


@0.2v


- UI 개선

- 수정 후 찾기를 너무 빨리 할 시에 엑셀 프로시저를 못불러와서, 수정후 찾기 버튼이 활성화 되기까지 시간을 5초로 변경.

- Title 변경

- 초기화 버튼 추가.



@0.3v


- 하나 찾으면 다른 건 안찾고 넘어가버리는 것을 수정해서 모두 찾게 수정


###########################################################################



오핫카페에 있는 http://cafe.naver.com/ahklab/19387 소스를 기반으로 내가 필요한 기능들을 구현했음.


존나 조잡하지만. 나는 쓸만해..


목적은 IP만 있는 엑셀파일을 열어서 빈칸에 집어넣은 IP들을 조회해서 어딨는지 표시해주고, 실제로 엑셀상에서 채우기(보라)로 


쉽게 찾고 , 찾은 내용과 연관된 내용들을 좀 더 빠르게 찾기 위함임.