Imports System.IO Imports System.Text Public Class XLSSync ' Dim FN As String = vbNullString Structure Str_Macro Dim FileName As String Dim Desc As String End Structure Dim Srcfile As String = "" '//¿øº»ÆÄÀÏ ÇöÀç ºÒ·¯¿Â À̰ųª ÀÌÀü¿¡ ºÒ·¯¿Ó´ø Dim DesFile As String = "" Dim findCnt As Integer = 0 Dim ListOk As ArrayList Dim ListDel As ArrayList Dim MacroPattern As String = "xlssync" Dim IniFile As String = My.Application.Info.DirectoryPath & "\macro\" & MacroPattern & "\default.ini" Dim MacroPath As String = My.Application.Info.DirectoryPath & "\macro\" & MacroPattern Dim Log1, log2 As ArrayList Dim Macro() As Str_Macro Private Sub Load_Macro() Dim Ini As MyINI2 Dim DI As New DirectoryInfo(Me.MacroPath) If Not DI.Exists Then DI.Create() Dim FI() As FileInfo = DI.GetFiles(Me.MacroPattern & "*.ini") ReDim Macro(FI.GetUpperBound(0)) '//¸ÅÅ©·Î µî·ÏÇÑ´Ù. Dim I As Integer = 0 Me.cmb_macro.Items.Clear() Me.cmb_macro.Items.Add("ÀÌÀü¼³Á¤") For Each F As FileInfo In FI Me.Macro(I).FileName = F.FullName Ini = New MyINI2(F.FullName) Me.Macro(I).Desc = Ini.Read("main", "desc", "±âº»¼³¸í") Me.cmb_macro.Items.Add(Me.Macro(I).Desc) I += 1 Next End Sub Private Sub XLSImport_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing ' Me.ListView3.COLSIZE_SAVE() Me.Save_Setting() End Sub Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Load_Macro() Me.cmb_macro.SelectedIndex = 0 Try Me.srcview.Font = New Font(ViewFont.FontName, ViewFont.FontSize, Me.Font.Style) Me.desview.Font = New Font(ViewFont.FontName, ViewFont.FontSize, Me.Font.Style) Me.ToolStrip1.Font = New Font(MenuFont.FontName, MenuFont.FontSize, Me.Font.Style) '//±ÛÀÚÁ¤º¸ ºÒ·¯¿À±â Me.ToolStrip3.Font = New Font(MenuFont.FontName, MenuFont.FontSize, Me.Font.Style) '//±ÛÀÚÁ¤º¸ ºÒ·¯¿À±â Me.ToolStrip4.Font = New Font(MenuFont.FontName, MenuFont.FontSize, Me.Font.Style) '//±ÛÀÚÁ¤º¸ ºÒ·¯¿À±â Catch ex As Exception End Try End Sub Private Sub Load_Setting(Optional ByVal Macroindex As Integer = 0) Dim ini As MyINI2 If Macroindex = 0 Then ini = New MyINI2(IniFile) Else ini = New MyINI2(Me.Macro(Macroindex - 1).FileName) End If If ini.Exist = False Then MsgBox("ȯ°æÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾Ê¾Æ¼­ ±âÁ¸ÀÇ ¼³Á¤À» ºÒ·¯¿ÀÁö ¸øÇß½À´Ï´Ù", MsgBoxStyle.Critical, "È®ÀÎ") Return End If Me.tb_srcstt.Text = ini.Read("normal", "srcstartpos", "1") '//½ÃÀÛ Me.tb_srcend.Text = ini.Read("normal", "srcendpos", "0") '//Á¾·á Me.tb_desstt.Text = ini.Read("normal", "destartpos", "1") '//½ÃÀÛ Me.tb_desend.Text = ini.Read("normal", "desendpos", "0") '//Á¾·á Me.Srcfile = ini.Read("normal", "srcfile", "") Me.DesFile = ini.Read("normal", "desfile", "") For Each A As MyControlOLEDBv2.ImpCtl In Me.TableLayoutPanel3.Controls A.¿­¹øÈ£ = ini.Read("CURSETNUMsrc", A.Name) A.¹®ÀÚ¿­ÀÚ¸£±â = ini.Read("CURSETSPLsrc", A.Name) A.ºó°ªÃ¼Å© = ini.Read("CURSETNULsrc", A.Name, False) Next For Each A As MyControlOLEDBv2.ImpCtl In Me.TableLayoutPanel6.Controls A.¿­¹øÈ£ = ini.Read("CURSETNUMdes", A.Name) A.¹®ÀÚ¿­ÀÚ¸£±â = ini.Read("CURSETSPLdes", A.Name) A.ºó°ªÃ¼Å© = ini.Read("CURSETNULdes", A.Name, False) Next For Each A As Control In Me.TableLayoutPanel7.Controls If A.GetType.Name.ToUpper = "IMPCTL" Then CType(A, MyControlOLEDBv2.ImpCtl).¿­¹øÈ£ = ini.Read("CURSETNUMin", A.Name) CType(A, MyControlOLEDBv2.ImpCtl).¹®ÀÚ¿­ÀÚ¸£±â = ini.Read("CURSETSPLin", A.Name) CType(A, MyControlOLEDBv2.ImpCtl).ºó°ªÃ¼Å© = ini.Read("CURSETNULin", A.Name, False) ElseIf A.GetType.Name.ToUpper = "TEXTBOX" Then A.Text = ini.Read("CURSETNUMout", A.Name) End If Next End Sub Private Sub Save_Setting(Optional ByVal Macroindex As Integer = 0) '//ÇöÀç ¼ÂÆÃÀ» ÀúÀåÇÕ´Ï´Ù. '//ÀúÀå¸ñ·ÏÀº ½ÃÀÛ/Á¾·á ¿­¹øÈ£ ¾ÆÀÌÅÛÀÇ ÅØ½ºÆ®ÀÌ´Ù. Dim Macroname As String Dim ini As MyINI2 If Macroindex = 0 Then ini = New MyINI2(IniFile) Macroname = "±âº»¼³Á¤" ElseIf Macroindex = -999 Then '//ÀÌ°Ç »õ·Î¿î ¸ÅÅ©·ÎÀÇ Ãß°¡´Ù. ¸ÅÅ©·Î ÆÄÀϸíÀ» »õ·ÎÁö¾î¾ßÇÑ´Ù. Macroname = InputBox("¸ÅÅ©·Î ¼³¸íÀ» ÀÔ·ÂÇϼ¼¿ä", "¼³¸íÀÔ·Â", "½Å±Ô¸ÅÅ©·Î") Dim i As Integer = 0 Dim NewName As String = "" NewName: i += 1 NewName = Me.MacroPath & "\" & Me.MacroPattern & Format(Me.Macro.GetUpperBound(0) + i + 1, "00") & ".ini" If New FileInfo(NewName).Exists Then GoTo NewName ini = New MyINI2(NewName) Else ini = New MyINI2(Me.Macro(Macroindex - 1).FileName) Macroname = Me.Macro(Macroindex - 1).Desc End If ini.Write("main", "desc", Macroname) ini.Write("normal", "srcstartpos", Me.tb_srcstt.Text) '//½ÃÀÛ ini.Write("normal", "srcendpos", Me.tb_srcend.Text) '//Á¾·á ini.Write("normal", "destartpos", Me.tb_desstt.Text) '//½ÃÀÛ ini.Write("normal", "desendpos", Me.tb_desend.Text) '//Á¾·á ini.Write("normal", "srcfile", Me.Srcfile) ini.Write("normal", "desfile", Me.DesFile) For Each A As MyControlOLEDBv2.ImpCtl In Me.TableLayoutPanel3.Controls '//°¢ ÅØ½ºÆ®¹Ú½º ini.Write("CURSETNUMsrc", A.Name, A.¿­¹øÈ£) ini.Write("CURSETSPLsrc", A.Name, A.¹®ÀÚ¿­ÀÚ¸£±â) ini.Write("CURSETNULsrc", A.Name, A.ºó°ªÃ¼Å©) Next For Each A As MyControlOLEDBv2.ImpCtl In Me.TableLayoutPanel6.Controls '//°¢ ÅØ½ºÆ®¹Ú½º ini.Write("CURSETNUMdes", A.Name, A.¿­¹øÈ£) ini.Write("CURSETSPLdes", A.Name, A.¹®ÀÚ¿­ÀÚ¸£±â) ini.Write("CURSETNULdes", A.Name, A.ºó°ªÃ¼Å©) Next For Each A As Control In Me.TableLayoutPanel7.Controls If A.GetType.Name.ToUpper = "IMPCTL" Then ini.Write("CURSETNUMin", CType(A, MyControlOLEDBv2.ImpCtl).Name, CType(A, MyControlOLEDBv2.ImpCtl).¿­¹øÈ£) ini.Write("CURSETSPLin", CType(A, MyControlOLEDBv2.ImpCtl).Name, CType(A, MyControlOLEDBv2.ImpCtl).¹®ÀÚ¿­ÀÚ¸£±â) ini.Write("CURSETNULin", CType(A, MyControlOLEDBv2.ImpCtl).Name, CType(A, MyControlOLEDBv2.ImpCtl).ºó°ªÃ¼Å©) ElseIf A.GetType.Name.ToUpper = "TEXTBOX" Then ini.Write("CURSETNUMout", A.Name, A.Text) End If Next End Sub Private Function GetFPData(ByVal sender As MyControlOLEDBv2.ImpCtl, ByVal Drow As FarPoint.Win.Spread.Row, ByVal CustFp1 As FarPoint.Win.Spread.FpSpread) As String '//¸¸¾à ³¯Â¥Æ÷¸ËÀ̸é FORMAT À» ÁöÁ¤Çؼ­ »ç¿ëÇÑ´Ù" Dim SUbidx As Integer Dim VALSTR As String If sender.¿­¹øÈ£ = "" Then '//Áï ¾ø´Ù´Â¶æÀÌ´Ù. Return "" Else '//ÀÖ´Ù. SUbidx = sender.¿­¹øÈ£ If CustFp1.ActiveSheet.Cells(Drow.Index, CInt(SUbidx - 1)).Text = "" Then ' MsgBox("°ªÀ̾ø¾î¼­ ¹Ù·Îº¸³½´Ù") Return "" '//µ¥ÀÌÅ;øÀ¸¸é ¸®ÅÏ End If If sender.¹®ÀÚ¿­ÀÚ¸£±â = "" OrElse sender.¹®ÀÚ¿­ÀÚ¸£±â = "0,0" Then '//¹®ÀÚ¿­ÀÚ¸£±âÈ®ÀÎ ¾ø´Ù ±×´ë·Î ¸®ÅÏ VALSTR = CustFp1.ActiveSheet.Cells(Drow.Index, CInt(SUbidx - 1)).Text Return VALSTR Else '//¹®ÀÚ¿­ÀÚ¸£±â°¡ ÀÖÀ¸¸é Àß¶ó¼­ º¸³»ÁØ´Ù. Dim DIV() As String = sender.¹®ÀÚ¿­ÀÚ¸£±â.Split(",") If DIV(1) = "0" Then '//½ÃÀÛºÎÅÍ ³¡±îÁö Try VALSTR = (CustFp1.ActiveSheet.Cells(Drow.Index, CInt(SUbidx - 1)).Text.Substring(DIV(0) - 1)) Catch ex As Exception VALSTR = CustFp1.ActiveSheet.Cells(Drow.Index, CInt(SUbidx - 1)).Text End Try Return VALSTR Else '/ÁöÁ¤¹üÀ§ Try VALSTR = CustFp1.ActiveSheet.Cells(Drow.Index, CInt(SUbidx - 1)).Text.Substring(DIV(0) - 1, DIV(1)) Catch ex As Exception VALSTR = CustFp1.ActiveSheet.Cells(Drow.Index, CInt(SUbidx - 1)).Text End Try Return VALSTR End If End If End If End Function Private Function GetFPData(ByVal sender As MyControlOLEDBv2.ImpCtl, ByVal Drow As Integer, ByVal CustFp1 As FarPoint.Win.Spread.FpSpread) As String '//¸¸¾à ³¯Â¥Æ÷¸ËÀ̸é FORMAT À» ÁöÁ¤Çؼ­ »ç¿ëÇÑ´Ù" Dim SUbidx As Integer Dim VALSTR As String If sender.¿­¹øÈ£ = "" Then '//Áï ¾ø´Ù´Â¶æÀÌ´Ù. Return "" Else '//ÀÖ´Ù. SUbidx = sender.¿­¹øÈ£ If CustFp1.ActiveSheet.Cells(Drow, CInt(SUbidx - 1)).Text = "" Then ' MsgBox("°ªÀ̾ø¾î¼­ ¹Ù·Îº¸³½´Ù") Return "" '//µ¥ÀÌÅ;øÀ¸¸é ¸®ÅÏ End If If sender.¹®ÀÚ¿­ÀÚ¸£±â = "" OrElse sender.¹®ÀÚ¿­ÀÚ¸£±â = "0,0" Then '//¹®ÀÚ¿­ÀÚ¸£±âÈ®ÀÎ ¾ø´Ù ±×´ë·Î ¸®ÅÏ VALSTR = CustFp1.ActiveSheet.Cells(Drow, CInt(SUbidx - 1)).Text Return VALSTR Else '//¹®ÀÚ¿­ÀÚ¸£±â°¡ ÀÖÀ¸¸é Àß¶ó¼­ º¸³»ÁØ´Ù. Dim DIV() As String = sender.¹®ÀÚ¿­ÀÚ¸£±â.Split(",") If DIV(1) = "0" Then '//½ÃÀÛºÎÅÍ ³¡±îÁö Try VALSTR = (CustFp1.ActiveSheet.Cells(Drow, CInt(SUbidx - 1)).Text.Substring(DIV(0) - 1)) Catch ex As Exception VALSTR = CustFp1.ActiveSheet.Cells(Drow, CInt(SUbidx - 1)).Text End Try Return VALSTR Else '/ÁöÁ¤¹üÀ§ Try VALSTR = CustFp1.ActiveSheet.Cells(Drow, CInt(SUbidx - 1)).Text.Substring(DIV(0) - 1, DIV(1)) Catch ex As Exception VALSTR = CustFp1.ActiveSheet.Cells(Drow, CInt(SUbidx - 1)).Text End Try Return VALSTR End If End If End If End Function Private Function NullCHeck1() As Boolean For Each C As Control In Me.TableLayoutPanel3.Controls If C.GetType.Name.ToUpper = "IMPCTL" Then If CType(C, MyControlOLEDBv2.ImpCtl).¿­¹øÈ£ <> "" AndAlso CType(C, MyControlOLEDBv2.ImpCtl).ºó°ªÃ¼Å© Then '//üũµÈ°ÔÀÕÀ¸¸é ¸®ÅÏÇÑ´Ù. Return True End If End If Next Return False End Function Private Function NullCHeck2() As Boolean For Each C As Control In Me.TableLayoutPanel6.Controls If C.GetType.Name.ToUpper = "IMPCTL" Then If CType(C, MyControlOLEDBv2.ImpCtl).¿­¹øÈ£ <> "" AndAlso CType(C, MyControlOLEDBv2.ImpCtl).ºó°ªÃ¼Å© Then '//üũµÈ°ÔÀÕÀ¸¸é ¸®ÅÏÇÑ´Ù. Return True End If End If Next Return False End Function '''È­¸é»ó´ÜÀÇ ºä¿¡ ÇöÀç Ä«¿îÅ͸¦ Ç¥½ÃÇÕ´Ï´Ù Private Sub vcount(ByVal number As String, ByVal lastnum As String) Me.lb_cnt.Text = number & "/" & lastnum My.Application.DoEvents() End Sub Private Sub RunSrc() '//Àû¿ë·çƾ ³¡¿¡ Ãß°¡¸¦ ÇØÁִ°ͻÓÀÌ´Ù (±âŸ¹øÈ£Âû) Dim Á¶ÇÕ1 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ2 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ3 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ4 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ5 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ6 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ7 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim °Ë»ö¹®ÀÚ As String Dim NullChk As Boolean = Me.NullCHeck1 '//ÀÌ°Ç ¿øº»ÀÇ ³Îüũ Dim NullVal As String = "" Dim cnt As Integer = -1 Addlog("=====ºÒÀÏÄ¡¸ñ·Ï=====", True) Addlog2("=====ÀÏÄ¡¸ñ·Ï=====", True) Dim StartCnt As Integer = CInt(Me.tb_srcstt.Text) Dim EndCnt As Integer = IIf(CInt(Me.tb_srcend.Text) = 0, Me.srcview.ActiveSheet.RowCount - 1, CInt(Me.tb_srcend.Text)) For Each Dr As FarPoint.Win.Spread.Row In Me.srcview.ActiveSheet.Rows '//¸ðµç·Î¿ì¿¡ÇØ´çÇϴµ¥ ½ÃÀÛÁÙºÎÅÍÇÑ´Ù If Dr.Index + 1 >= StartCnt AndAlso Dr.Index + 1 <= EndCnt Then '//½ÃÀÛÀ妽º ÀÌ»óÀϰæ¿ì¿¡¸¸ ÇÑ´Ù. vcount(Dr.Index + 1, EndCnt) NullVal = False Try Á¶ÇÕ1 = Me.GetFPData(Me.srcctl1, Dr, Me.srcview).ToUpper Á¶ÇÕ2 = Me.GetFPData(Me.srcctl2, Dr, Me.srcview).ToUpper Á¶ÇÕ3 = Me.GetFPData(Me.srcctl3, Dr, Me.srcview).ToUpper Á¶ÇÕ4 = Me.GetFPData(Me.srcctl4, Dr, Me.srcview).ToUpper Á¶ÇÕ5 = Me.GetFPData(Me.srcctl5, Dr, Me.srcview).ToUpper Á¶ÇÕ6 = Me.GetFPData(Me.srcctl6, Dr, Me.srcview).ToUpper Á¶ÇÕ7 = Me.GetFPData(Me.srcctl7, Dr, Me.srcview).ToUpper If NullChk Then '//³Î°ª üũ½Ã¿¡ üũµÈ°ÍÀÌ nullÀ̶ó¸é nullval À» true·Î ¹Ù²Û´Ù. NullVal = "" If Me.srcctl1.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ1.Trim = "", "", "X") If Me.srcctl2.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ2.Trim = "", "", "X") If Me.srcctl3.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ3.Trim = "", "", "X") If Me.srcctl4.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ4.Trim = "", "", "X") If Me.srcctl5.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ5.Trim = "", "", "X") If Me.srcctl6.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ6.Trim = "", "", "X") If Me.srcctl7.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ7.Trim = "", "", "X") Else NullVal = "X" '//±âº»false·Î ÇØÁà¾ßÇÑ´Ù. End If If NullVal.Trim <> "" Then 'falseÀ϶§¸¸ Ãß°¡ÇÑ´Ù. true´Â ³Î°ªÀÌÀÕÀ¸¹Ç·Î ³Ñ¾î°£´Ù. '//ÀÌÁ¦ À̺κп¡¼­ ´ë»óÆÄÀÏÀÇ ³»¿ëÀ» ÀüºÎ ·çÇÁ·Î µ·´Ù. °Ë»ö¹®ÀÚ = CStr(Á¶ÇÕ1 & Á¶ÇÕ2 & Á¶ÇÕ3 & Á¶ÇÕ4 & Á¶ÇÕ5 & Á¶ÇÕ6 & Á¶ÇÕ7).Trim If °Ë»ö¹®ÀÚ = "" Then Addlog("[X] °Ë»öÇÒ ¹®ÀÚ°¡ ¾ø½À´Ï´Ù ÁÙ¹øÈ£=" & Dr.Index + 1) Else Me.RunDesc(°Ë»ö¹®ÀÚ, Dr.Index) End If ' End If Catch ex As ConstraintException '//Áߺ¹ ' AddLog("¹øÈ£Áߺ¹", "Áߺ¹µÈ ¹øÈ£:" & ¹øÈ£) Catch ex As Exception ' AddLog(ex.InnerException.ToString, ex.Message.ToString) End Try End If Next Addlog("[¿Ï·á] " & Me.ListDel.Count & "°³ÀÇ ÁÙÀÌ ÀÏÄ¡ÇÏÁö ¾Ê¾Ò½À´Ï´Ù") Addlog2("[¿Ï·á] " & Me.ListOk.Count & "°³ÀÇ ÁÙÀÌ ÀÏÄ¡ÇÕ´Ï´Ù") If findCnt = 0 Then MsgBox("ÀÏÄ¡ÇÏ´Â ÁÙÀÌ ¾ø½À´Ï´Ù" & vbCrLf & vbCrLf & "·Î±×³»¿ªÀ» ÅëÇØ¼­ »ó¼¼³»¿ªÀ» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù", MsgBoxStyle.Critical, "È®ÀÎ") Else MsgBox(findCnt & "°³ÀÇ ÁÙÀÌ ÀÏÄ¡ÇÕ´Ï´Ù" & vbCrLf & vbCrLf & "·Î±×³»¿ªÀ» ÅëÇØ¼­ »ó¼¼³»¿ªÀ» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù", MsgBoxStyle.Information, "È®ÀÎ") End If synclog.Show() '//arrylist ÀÇ ¸ñ·ÏÀ¸ °¡Áö°í µÚ¿¡¼­ ºÎÅÍ Áö¿î´Ù. Me.ListDel.Sort() 'Me.ListDel.Reverse() For Each Idx As Integer In Me.ListDel synclog.view1.ActiveSheet.RowCount += 1 '//ÁÙ Áõ°¡ For ci As Integer = 0 To Me.srcview.ActiveSheet.ColumnCount - 1 synclog.view1.ActiveSheet.Cells(synclog.view1.ActiveSheet.RowCount - 1, ci).Text = Me.srcview.ActiveSheet.Cells(Idx, ci).Text Next Next Me.ListOk.Sort() 'Me.ListOk.Reverse() For Each Idx As Integer In Me.ListOk synclog.view2.ActiveSheet.RowCount += 1 '//ÁÙ Áõ°¡ For ci As Integer = 0 To Me.srcview.ActiveSheet.ColumnCount - 1 synclog.view2.ActiveSheet.Cells(synclog.view2.ActiveSheet.RowCount - 1, ci).Text = Me.srcview.ActiveSheet.Cells(Idx, ci).Text Next Next 'synclog.view1.SaveExcel("c:\ºñÆ÷ÇÔ¸ñ·Ï.xls", FarPoint.Excel.ExcelSaveFlags.SaveBothCustomRowAndColumnHeaders) 'synclog.view2.SaveExcel("c:\Æ÷ÇÔ¸ñ·Ï.xls", FarPoint.Excel.ExcelSaveFlags.SaveBothCustomRowAndColumnHeaders) End Sub Private Sub RunDesc(ByVal SearchText As String, ByVal Srcrownum As Integer) '//´ë»óÆÄÀÏ '//¸Å°³º¯¼ö·Î °Ë»öÇØ¾ßÇÒ ÅØ½ºÆ®¸¦ °¡Áø´Ù. '//ÀÏÄ¡ÇÏ´Â Ç׸ñÀ» ã¾ÑÀ»°æ¿ì¿¡ ÁöÁ¤µÈ ¿­¿¡ µ¥ÀÌÅ͸¦ º¹»çÇÑ´Ù. '//ãÀºÈÄ´ÙÀ½ÁÙ ÂüÁ¶ÀÇ Àǹ̴ chk_allcheck ¹öưÀÇ Ã¼Å©»óÅ¿¡µû¸¥´Ù. ÀÌ ¼ÂÆÃÀÌ ¼³Á¤µÇ¾îÀÕÀ¸¸é °Ë»öÀº ¾öû´À·ÁÁú °ÍÀÌ´Ù. Dim Á¶ÇÕ1 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ2 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ3 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ4 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ5 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ6 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ7 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim NullChk As Boolean = Me.NullCHeck2 '//ÀÌ°Ç ´ë»óÀÇ ³Îüũ Dim NullVal As String = "" Dim cnt As Integer = -1 Dim Find As Boolean = False ' Addlog("´ë»ó¸ñ·Ï È®ÀÎ") Dim StartCnt As Integer = CInt(Me.tb_desstt.Text) Dim EndCnt As Integer = IIf(CInt(Me.tb_desend.Text) = 0, Me.desview.ActiveSheet.RowCount - 1, CInt(Me.tb_desend.Text)) For Each Dr As FarPoint.Win.Spread.Row In Me.desview.ActiveSheet.Rows '//¸ðµç·Î¿ì¿¡ÇØ´çÇϴµ¥ ½ÃÀÛÁÙºÎÅÍÇÑ´Ù If Dr.Index + 1 >= StartCnt AndAlso Dr.Index + 1 <= EndCnt Then '//½ÃÀÛÀ妽º ÀÌ»óÀϰæ¿ì¿¡¸¸ ÇÑ´Ù. NullVal = False Try Á¶ÇÕ1 = Me.GetFPData(Me.desctl1, Dr, Me.desview).ToUpper Á¶ÇÕ2 = Me.GetFPData(Me.desctl2, Dr, Me.desview).ToUpper Á¶ÇÕ3 = Me.GetFPData(Me.desctl3, Dr, Me.desview).ToUpper Á¶ÇÕ4 = Me.GetFPData(Me.desctl4, Dr, Me.desview).ToUpper Á¶ÇÕ5 = Me.GetFPData(Me.desctl5, Dr, Me.desview).ToUpper Á¶ÇÕ6 = Me.GetFPData(Me.desctl6, Dr, Me.desview).ToUpper Á¶ÇÕ7 = Me.GetFPData(Me.desctl7, Dr, Me.desview).ToUpper If NullChk Then '//³Î°ª üũ½Ã¿¡ üũµÈ°ÍÀÌ nullÀ̶ó¸é nullval À» true·Î ¹Ù²Û´Ù. NullVal = "" If Me.desctl1.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ1.Trim = "", "", "X") If Me.desctl2.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ2.Trim = "", "", "X") If Me.desctl3.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ3.Trim = "", "", "X") If Me.desctl4.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ4.Trim = "", "", "X") If Me.desctl5.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ5.Trim = "", "", "X") If Me.desctl6.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ6.Trim = "", "", "X") If Me.desctl7.ºó°ªÃ¼Å© Then NullVal &= IIf(Á¶ÇÕ7.Trim = "", "", "X") Else NullVal = "X" '//±âº»false·Î ÇØÁà¾ßÇÑ´Ù. End If If NullVal.Trim <> "" AndAlso SearchText.Trim.ToUpper = CStr(Á¶ÇÕ1 & Á¶ÇÕ2 & Á¶ÇÕ3 & Á¶ÇÕ4 & Á¶ÇÕ5 & Á¶ÇÕ6 & Á¶ÇÕ7).ToUpper Then 'falseÀ϶§¸¸ Ãß°¡ÇÑ´Ù. true´Â ³Î°ªÀÌÀÕÀ¸¹Ç·Î ³Ñ¾î°£´Ù. '//´ë»óÆÄÀÏ¿¡¼­ °°Àº ÁÙÀ» ã¾Ò´Ù. ±×·¯¸é ÀÌÁ¦ ¿­°ª º¹»çÇØ¿À´Â ºÎºÐÀ» ÂüÁ¶Çؼ­ ÇØ´ç ¿øº»¿­¿¡ º¹»ç¸¦ ÇØÁØ´Ù. '//¾Ë¾Æ¾ßÇÒ°ÍÀº ÇöÀç ¿øº»ÀÇ ÁÙ ¹øÈ£ ´ë»óÀÇ ÁÙ¹øÈ£ '//¿øº»ÁÙ¹øÈ£´Â srcrownum ¿¡ ÀÖÀ¸¸ç À̰ÍÀº srcview ÀÇ ÁÙ¹øÈ£ÀÌ´Ù. '//´ë»óÁÙ¹øÈ£´Â ÇöÀç dr.index ÀÇ ³»¿ëÀ» ÂüÁ¶ÇϸéµÈ´Ù. findCnt += 1 '//¼º°øÈ½¼ö¸¦ ÀúÀåÇÑ´Ù. Find = True If Me.chk_test.Checked Then Addlog2("*¸ðÀǽÇÇà [O] " & SearchText & " ¿øº»ÁÙ¹øÈ£:" & Srcrownum + 1 & " ´ë»óÁÙ¹øÈ£:" & Dr.Index + 1) Else Addlog2("[O] " & SearchText & " ¿øº»ÁÙ¹øÈ£:" & Srcrownum + 1 & " ´ë»óÁÙ¹øÈ£:" & Dr.Index + 1) Apply_Column(Srcrownum, Dr.Index) End If If Not Me.chk_allcheck.Checked Then Exit For '//´ÙÀ½ÁÙÀº È®ÀξÈÇÑ´Ù. End If Catch ex As ConstraintException '//Áߺ¹ ' AddLog("¹øÈ£Áߺ¹", "Áߺ¹µÈ ¹øÈ£:" & ¹øÈ£) Catch ex As Exception ' AddLog(ex.InnerException.ToString, ex.Message.ToString) End Try End If Next '//¿Ï·áµÇ¾úÀ»¶§ ã¾Ò´Ù¸é addlog2 ¿¡ÇÏ°í ±×·¸Áö¾ÊÀ¸¸é addlog ¿¡ ÇÑ´Ù. If Find = False Then '//¸øÃ£¾ÑÀ¸¹Ç·Î Æ÷ÇÔ¸ñ·ÏÀº Áö¿ì°í ºñÆ÷ÇÔ¸ñ·ÏÀº µÐ´Ù Addlog("[X] " & SearchText & " ¿øº»ÁÙ¹øÈ£:" & Srcrownum + 1) 'synclog.view2.ActiveSheet.Rows(Srcrownum).Remove() Me.ListDel.Add(Srcrownum) Else '//±× ¹Ý´ë´Ù Me.ListOk.Add(Srcrownum) 'synclog.view1.ActiveSheet.Rows(Srcrownum).Remove() End If 'Addlog("´ë»ó¸ñ·Ï È®ÀοϷá") End Sub Private Sub Apply_Column(ByVal srcnum As Integer, ByVal desnum As Integer) '//½ÇÁ¦ µ¥ÀÌÅ͸¦ Àû¿ëÇÑ´Ù. ¿øº»°ú ´ë»óÀÇ ÁÙ¹øÈ£´Â °¡Áö°íÀÖ´Ù. '//¸ÅνÃŰ´Â ¿­Àº 8°³°¡ ÀÖÀ¸¸ç °¢°¢ in1~8 ¶Ç´Â out1~8 ÀÌ´Ù. in¿¡´Â ÀÚ¸£±âµîÀÇ ¿É¼ÇÀÌ °¡´ÉÇÏ´Ù. '//°¢ 8°³ÀÇ ¿­Àº ¼­·Î ´ëÄ¡µË´Ï´Ù. Dim ½Ã°ø³â¿ù As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ2 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ3 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ4 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ5 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ6 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ7 As String '//Á¶ÇÕ´Â notnull ÀÌ´Ù Dim Á¶ÇÕ8 As String ½Ã°ø³â¿ù = Me.GetFPData(Me.in1, desnum, Me.desview).ToUpper Á¶ÇÕ2 = Me.GetFPData(Me.in2, desnum, Me.desview).ToUpper Á¶ÇÕ3 = Me.GetFPData(Me.in3, desnum, Me.desview).ToUpper Á¶ÇÕ4 = Me.GetFPData(Me.in4, desnum, Me.desview).ToUpper Á¶ÇÕ5 = Me.GetFPData(Me.in5, desnum, Me.desview).ToUpper Á¶ÇÕ6 = Me.GetFPData(Me.in6, desnum, Me.desview).ToUpper Á¶ÇÕ7 = Me.GetFPData(Me.in7, desnum, Me.desview).ToUpper Á¶ÇÕ8 = Me.GetFPData(Me.in8, desnum, Me.desview).ToUpper If ½Ã°ø³â¿ù.Length = 3 Then ½Ã°ø³â¿ù = "0" & ½Ã°ø³â¿ù SetFpData(srcnum, out1.Text, ½Ã°ø³â¿ù) SetFpData(srcnum, out2.Text, Á¶ÇÕ2) SetFpData(srcnum, out3.Text, Á¶ÇÕ3) SetFpData(srcnum, out4.Text, Á¶ÇÕ4) SetFpData(srcnum, out5.Text, Á¶ÇÕ5) SetFpData(srcnum, out6.Text, Á¶ÇÕ6) SetFpData(srcnum, out7.Text, Á¶ÇÕ7) SetFpData(srcnum, out8.Text, Á¶ÇÕ8) '//°¢µ¥ÀÌÅ͸¦ °¡Á®¿Ô´Ù. '//°¡Á®¿ÓÀ¸¹Ç·Î ÀÌÁ¦ out1~8¿¡ ÁöÁ¤µÈ ¿­¿¡ ÇØ´ç µ¥ÀÌÅ͸¦ ±â·Ï¸¸ ÇØÁÖ¸éµÈ´Ù. End Sub Private Sub SetFpData(ByVal srcnum As Integer, ByVal colnum As String, ByVal SeTvalue As String, Optional ByVal formatmask As String = "") '//¿øº» ºä srcview ÀÇ ÁÙ,¿­¿¡ µ¥ÀÌÅ͸¦ ±â·ÏÇÑ´Ù. column ÀÌ 0À̰ųª ºó°ªÀ̸é ÇÏÁö¾Ê´Â´Ù. If colnum = "0" OrElse colnum = "" Then Return If IsNumeric(colnum) = False Then Return '//¼ýÀÚ°¡ ¾Æ´Ï¸é »ç¿ëÇÏÁö ¾Ê´Â´Ù. If SeTvalue = "" Then '//°ªÀ̾øÀ¸¸é Addlog("[X] ´ë»óÆÄÀϷκÎÅÍ °¡Á®¿Ã °ªÀÌ ¾ø½À´Ï´Ù. ¿­¹øÈ£:" & colnum + 1) Return End If '//¿©±â¼­ ºÎÅÍ´Â 0ÀÌ»óÀÇ °ªÀÌ´Ù. ¸ÕÀú ÇØ´ç ¿­ÀÌ Á¸ÀçÇÏ´ÂÁö È®ÀÎÇÑ´Ù. Try Me.srcview.ActiveSheet.Cells(srcnum, colnum - 1).Text = SeTvalue Catch ex As Exception Addlog("¿­¹øÈ£:" & colnum + 1 & "ÀÌ Á¸ÀçÇÏÁö ¾Ê°Å³ª ±âŸ ¿À·ùÀÔ´Ï´Ù") End Try End Sub Private Sub Addlog(ByVal Msg As String, Optional ByVal reset As Boolean = False) If reset Then synclog.RichTextBox1.Clear() synclog.RichTextBox1.AppendText(Msg & vbCrLf) End Sub Private Sub Addlog2(ByVal Msg As String, Optional ByVal reset As Boolean = False) If reset Then synclog.RichTextBox2.Clear() synclog.RichTextBox2.AppendText(Msg & vbCrLf) End Sub '//·Î±×ºÎºÐÀ» ¸Þ¸ð¸®·Î º¯°æÇÕ´Ï´Ù Private Sub ToolStripButton4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton4.Click Me.Close() End Sub Private Sub srcview_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles srcview.DragEnter If (e.Data.GetDataPresent(DataFormats.FileDrop)) Then e.Effect = DragDropEffects.Copy ElseIf (e.Data.GetDataPresent(DataFormats.StringFormat)) Then ' MsgBox("string") e.Effect = DragDropEffects.Copy ElseIf (e.Data.GetDataPresent(DataFormats.Text)) Then ' MsgBox("text") e.Effect = DragDropEffects.Copy Else e.Effect = DragDropEffects.None End If End Sub Private Sub RenameColumnname2() For i As Integer = 0 To Me.desview.Sheets.Count - 1 For Each CL As FarPoint.Win.Spread.Column In Me.desview.Sheets(i).Columns Me.desview.Sheets(i).Columns(CL.Index).Label = CL.Index + 1 Next Next End Sub Private Sub RenameColumnname1() For i As Integer = 0 To Me.srcview.Sheets.Count - 1 For Each CL As FarPoint.Win.Spread.Column In Me.srcview.Sheets(i).Columns Me.srcview.Sheets(i).Columns(CL.Index).Label = CL.Index + 1 Next Next End Sub Private Sub desview_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles desview.DragEnter If (e.Data.GetDataPresent(DataFormats.FileDrop)) Then e.Effect = DragDropEffects.Copy ElseIf (e.Data.GetDataPresent(DataFormats.StringFormat)) Then ' MsgBox("string") e.Effect = DragDropEffects.Copy ElseIf (e.Data.GetDataPresent(DataFormats.Text)) Then ' MsgBox("text") e.Effect = DragDropEffects.Copy Else e.Effect = DragDropEffects.None End If End Sub Private Sub desview_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles desview.DragDrop If (e.Data.GetDataPresent(DataFormats.FileDrop)) Then Dim STR() As String = CType(e.Data.GetData(DataFormats.FileDrop), String()) If Me.desview.IsExcelFile(STR(0)) = False Then MsgBox(STR(0) & vbCrLf & "¿¢¼¿ÆÄÀÏÀÌ ¾Æ´Õ´Ï´Ù") Else If Me.desview.OpenExcel(STR(0), FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders) = False Then MsgBox(STR(0) & vbCrLf & "ÆÄÀÏÀ» ºÒ·¯¿Ã¼ö ¾ø½À´Ï´Ù") Else '//ºÒ·¯¿ÓÀ¸´Ï ¿­Á¦¸ñÀ» Àç¼³Á¤ÇÑ´Ù. RenameColumnname1() End If End If ElseIf (e.Data.GetDataPresent(DataFormats.StringFormat)) Then Dim Fi As New System.IO.FileInfo(e.Data.GetData(DataFormats.StringFormat)) If Me.desview.IsExcelFile(Fi.FullName) = False Then MsgBox(Fi.FullName & vbCrLf & "¿¢¼¿ÆÄÀÏÀÌ ¾Æ´Õ´Ï´Ù") Else If Me.desview.OpenExcel(Fi.FullName, FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders) = False Then MsgBox(Fi.FullName & vbCrLf & "ÆÄÀÏÀ» ºÒ·¯¿Ã¼ö ¾ø½À´Ï´Ù") End If End If ElseIf (e.Data.GetDataPresent(DataFormats.Text)) Then Dim STR() As String = CType(e.Data.GetData(DataFormats.Text), String()) If Me.desview.IsExcelFile(STR(0)) = False Then MsgBox(STR(0) & vbCrLf & "¿¢¼¿ÆÄÀÏÀÌ ¾Æ´Õ´Ï´Ù") Else If Me.desview.OpenExcel(STR(0), FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders) = False Then MsgBox(STR(0) & vbCrLf & "ÆÄÀÏÀ» ºÒ·¯¿Ã¼ö ¾ø½À´Ï´Ù") End If End If End If End Sub Private Sub srcview_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles srcview.DragDrop If (e.Data.GetDataPresent(DataFormats.FileDrop)) Then Dim STR() As String = CType(e.Data.GetData(DataFormats.FileDrop), String()) If Me.srcview.IsExcelFile(STR(0)) = False Then MsgBox(STR(0) & vbCrLf & "¿¢¼¿ÆÄÀÏÀÌ ¾Æ´Õ´Ï´Ù") Else If Me.srcview.OpenExcel(STR(0), FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders) = False Then MsgBox(STR(0) & vbCrLf & "ÆÄÀÏÀ» ºÒ·¯¿Ã¼ö ¾ø½À´Ï´Ù") Else '//ºÒ·¯¿ÓÀ¸´Ï ¿­Á¦¸ñÀ» Àç¼³Á¤ÇÑ´Ù. RenameColumnname1() End If End If ElseIf (e.Data.GetDataPresent(DataFormats.StringFormat)) Then Dim Fi As New System.IO.FileInfo(e.Data.GetData(DataFormats.StringFormat)) If Me.srcview.IsExcelFile(Fi.FullName) = False Then MsgBox(Fi.FullName & vbCrLf & "¿¢¼¿ÆÄÀÏÀÌ ¾Æ´Õ´Ï´Ù") Else If Me.srcview.OpenExcel(Fi.FullName, FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders) = False Then MsgBox(Fi.FullName & vbCrLf & "ÆÄÀÏÀ» ºÒ·¯¿Ã¼ö ¾ø½À´Ï´Ù") End If End If ElseIf (e.Data.GetDataPresent(DataFormats.Text)) Then Dim STR() As String = CType(e.Data.GetData(DataFormats.Text), String()) If Me.srcview.IsExcelFile(STR(0)) = False Then MsgBox(STR(0) & vbCrLf & "¿¢¼¿ÆÄÀÏÀÌ ¾Æ´Õ´Ï´Ù") Else If Me.srcview.OpenExcel(STR(0), FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders) = False Then MsgBox(STR(0) & vbCrLf & "ÆÄÀÏÀ» ºÒ·¯¿Ã¼ö ¾ø½À´Ï´Ù") End If End If End If End Sub Private Sub desview_CellClick(ByVal sender As System.Object, ByVal e As FarPoint.Win.Spread.CellClickEventArgs) End Sub Private Sub srcview_CellClick(ByVal sender As System.Object, ByVal e As FarPoint.Win.Spread.CellClickEventArgs) End Sub Private Sub bt_srcfile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_srcfile.Click Dim OD As New OpenFileDialog OD.FileName = Me.Srcfile OD.Filter = "MS Office Excel WorkSheet(*.xls)|*.xls" OD.FilterIndex = 1 ' OD.RestoreDirectory = True If OD.ShowDialog() = Windows.Forms.DialogResult.Cancel Then MsgBox("ºÒ·¯¿À±â°¡ Ãë¼ÒµÇ¾ú½À´Ï´Ù", MsgBoxStyle.Critical, "È®ÀÎ") Else ReadXls(OD.FileName, Me.srcview) Me.Srcfile = OD.FileName RenameColumnname1() 'synclog.view1.OpenExcel(OD.FileName, FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders) '//ºñÆ÷ÇÔ¸ñ·ÏÀ» ÀúÀå 'synclog.view2.OpenExcel(OD.FileName, FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders) '//Æ÷ÇÔ¸ñ·ÏÀ» ÀúÀå End If End Sub Private Sub ReadXls(ByVal Filename As String, ByRef custfp1 As FarPoint.Win.Spread.FpSpread) '//Read xls File custfp1.OpenExcel(Filename) For index As Integer = 0 To custfp1.Sheets.Count - 1 For Each Cl As FarPoint.Win.Spread.Column In custfp1.Sheets(index).Columns '//Set columns label Cl.Label = Cl.Index + 1 Next Next ''//¿¬¼Ó 5°³ÀÇ °ø¹éÀÌ º¸À̸é Ä«¿îÆ®¸¦ Á¾·áÇÑ´Ù. Dim °ø¹é As Int16 = 0 For Each Row As FarPoint.Win.Spread.Row In custfp1.ActiveSheet.Rows If custfp1.ActiveSheet.Cells(Row.Index, 0).Text = "" AndAlso custfp1.ActiveSheet.Cells(Row.Index, 1).Text = "" AndAlso custfp1.ActiveSheet.Cells(Row.Index, 2).Text = "" Then ' MsgBox(Row.Index) °ø¹é += 1 Else °ø¹é = 0 End If If °ø¹é >= 10 Then ' MsgBox("Á¾·á½ÃÁ¡°Ë»ö¿Ï·á" & Row.Index) custfp1.ActiveSheet.RowCount = Row.Index + 1 - 10 Exit For End If Next End Sub Private Sub tb_desfile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tb_desfile.Click Dim OD As New OpenFileDialog OD.FileName = Me.DesFile OD.Filter = "MS Office Excel WorkSheet(*.xls)|*.xls" OD.FilterIndex = 1 ' OD.RestoreDirectory = True If OD.ShowDialog() = Windows.Forms.DialogResult.Cancel Then MsgBox("ºÒ·¯¿À±â°¡ Ãë¼ÒµÇ¾ú½À´Ï´Ù", MsgBoxStyle.Critical, "È®ÀÎ") Else ReadXls(OD.FileName, Me.desview) Me.DesFile = OD.FileName RenameColumnname2() End If End Sub Private Sub ToolStripButton5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton5.Click If MsgBox("½ÇÇàÇϽðڽÀ´Ï±î?" & vbCrLf & vbCrLf & "¿Ï·áµÉ‹š±îÁö Ãë¼ÒÇÒ ¼ö ¾ø½À´Ï´Ù", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "È®ÀÎ") <> MsgBoxResult.Ok Then MsgBox("½ÇÇàÀÌ Ãë¼ÒµÇ¾ú½À´Ï´Ù", MsgBoxStyle.Critical, "È®ÀÎ") Return End If findCnt = 0 Me.ListOk = New ArrayList Me.ListDel = New ArrayList Me.Log1 = New ArrayList Me.log2 = New ArrayList Me.RunSrc() End Sub Private Sub bt_srcsave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_srcsave.Click Dim a As New SaveFileDialog a.Filter = "¿¢¼¿ ¿öÅ©½ÃÆ®ÆÄÀÏ(*.XLS)|*.XLS" a.FilterIndex = 0 a.Title = "[¸ðµçµ¥ÀÌÅͳ»º¸³»±â] ÀúÀåÇÒ ¿¢¼¿ ÆÄÀÏÀ» ÁöÁ¤Çϼ¼¿ä" a.FileName = "¹Ù²ïÆÄÀÏ.xls" If a.ShowDialog() <> Windows.Forms.DialogResult.Cancel Then Dim msg As New System.Text.StringBuilder Me.srcview.SaveExcel(a.FileName, FarPoint.Excel.ExcelSaveFlags.SaveAsViewed) msg.AppendLine("[½ÃÆ®º¸È£]°¡ µÈÆÄÀÏÀº ¿­³Êºñ°¡ Á¶Á¤µÇÁö¾Ê½À´Ï´Ù.") msg.AppendLine() msg.AppendLine() msg.AppendLine("[½ÃÆ®º¸È£] »óÅ¿¡¼­´Â ½ÃÆ®¸¦ ÆíÁýÇÒ ¼ö ¾ø½À´Ï´Ù") msg.AppendLine() msg.AppendLine("[½ÃÆ®º¸È£]¸¦ ÇØÁ¦ÇÏ·Á¸é ÇØ´çÆÄÀÏÀ» ¿¢¼¿¿¡¼­ ºÒ·¯¿ÂÈÄ") msg.AppendLine("[µµ±¸]-[º¸È£]-[½ÃÆ®º¸È£ÇØÁ¦]¸¦ Ŭ¸¯Çϼ¼¿ä") MsgBox(msg.ToString, MsgBoxStyle.Information, "½ÃÆ®º¸È£") End If End Sub Private Sub bt_dessave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_dessave.Click Dim a As New SaveFileDialog a.Filter = "¿¢¼¿ ¿öÅ©½ÃÆ®ÆÄÀÏ(*.XLS)|*.XLS" a.FilterIndex = 0 a.Title = "[¸ðµçµ¥ÀÌÅͳ»º¸³»±â] ÀúÀåÇÒ ¿¢¼¿ ÆÄÀÏÀ» ÁöÁ¤Çϼ¼¿ä" a.FileName = "´ë»óÆÄÀÏ.xls" If a.ShowDialog() <> Windows.Forms.DialogResult.Cancel Then Dim msg As New System.Text.StringBuilder Me.srcview.SaveExcel(a.FileName, FarPoint.Excel.ExcelSaveFlags.SaveAsViewed) msg.AppendLine("[½ÃÆ®º¸È£]°¡ µÈÆÄÀÏÀº ¿­³Êºñ°¡ Á¶Á¤µÇÁö¾Ê½À´Ï´Ù.") msg.AppendLine() msg.AppendLine() msg.AppendLine("[½ÃÆ®º¸È£] »óÅ¿¡¼­´Â ½ÃÆ®¸¦ ÆíÁýÇÒ ¼ö ¾ø½À´Ï´Ù") msg.AppendLine() msg.AppendLine("[½ÃÆ®º¸È£]¸¦ ÇØÁ¦ÇÏ·Á¸é ÇØ´çÆÄÀÏÀ» ¿¢¼¿¿¡¼­ ºÒ·¯¿ÂÈÄ") msg.AppendLine("[µµ±¸]-[º¸È£]-[½ÃÆ®º¸È£ÇØÁ¦]¸¦ Ŭ¸¯Çϼ¼¿ä") MsgBox(msg.ToString, MsgBoxStyle.Information, "½ÃÆ®º¸È£") End If End Sub Private Sub bt_macrosave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_macrosave.Click If Me.cmb_macro.SelectedIndex <= 0 Then MsgBox("ÀúÀåµÉ ¸ÅÅ©·Î°¡ ¼±ÅõÇÁö¾Ê¾Ò½À´Ï´Ù", MsgBoxStyle.Information, "È®ÀÎ") Return End If Me.Save_Setting(Me.cmb_macro.SelectedIndex) MsgBox("¸ÅÅ©·Î°¡ ÀúÀåµÇ¾ú½À´Ï´Ù", MsgBoxStyle.Information, "È®ÀÎ") Me.Load_Macro() End Sub Private Sub bt_macrosavenew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_macrosavenew.Click Me.Save_Setting(-999) MsgBox("¸ÅÅ©·Î°¡ ÀúÀåµÇ¾ú½À´Ï´Ù", MsgBoxStyle.Information, "È®ÀÎ") Me.Load_Macro() End Sub Private Sub cmb_macro_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmb_macro.SelectedIndexChanged Load_Setting(Me.cmb_macro.SelectedIndex) End Sub Private Sub bt_macrodel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_macrodel.Click If Me.cmb_macro.SelectedIndex <= 0 Then MsgBox("»èÁ¦µÉ ¸ÅÅ©·Î°¡ ¼±ÅõÇÁö¾Ê¾Ò½À´Ï´Ù", MsgBoxStyle.Information, "È®ÀÎ") Return End If File.Delete(Me.Macro(Me.cmb_macro.SelectedIndex - 1).FileName) MsgBox("¸ÅÅ©·Î°¡ »èÁ¦µÇ¾ú½À´Ï´Ù", MsgBoxStyle.Information, "È®ÀÎ") Me.Load_Macro() End Sub Private Sub chk_test_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chk_test.Click End Sub End Class