From 4a1be6115023809550ce96bb3c9b7c37b81820bb Mon Sep 17 00:00:00 2001 From: updsv7 Date: Sat, 18 Apr 2026 21:42:00 +0900 Subject: [PATCH] next version --- .../Tukin_C1_Action.md | 0 .../Tukin_C1_Mapping.md | 0 .../Tukin_Cache_Mapping.md | 0 src/init_module/Import_modules.bas | 198 +++++++ src/{module => init_module}/Test_Cache.bas | 2 + src/module/Common_Button.bas | 112 ++++ ...{Read_Common.bas => Common_File_Utils.bas} | 543 ++++++++++------- ...Module_Common.bas => Common_Functions.bas} | 557 ++++++++++-------- ...r_Common.bas => Common_Generic_Master.bas} | 2 + ...obal_Cache.bas => Common_Global_Cache.bas} | 74 +-- .../{Build_Select.bas => Common_Selector.bas} | 2 + src/module/Validate_Common.bas | 10 - src/module/Write_Common.bas | 146 ----- .../Tukin_C1.bas => sheet/C1.cls} | 30 +- .../Master_M1_Kukan.bas => sheet/M1.cls} | 44 +- .../M2.cls} | 38 +- .../Master_O1_address.bas => sheet/O1.cls} | 18 +- .../Master_O2_507.bas => sheet/O2.cls} | 18 +- .../Master_Z1_222.bas => sheet/Z1.cls} | 24 +- .../Master_Z2_223.bas => sheet/Z2.cls} | 24 +- .../Master_Z3_224.bas => sheet/Z3.cls} | 14 +- .../Master_Z4_220.bas => sheet/Z4.cls} | 14 +- test.xlsm | Bin 0 -> 16144 bytes test.xlsx | Bin 0 -> 6599 bytes 通勤手当テンプレート_案.xlsm | Bin 394851 -> 225530 bytes 通勤手当テンプレート_案.xlsx | Bin 447979 -> 103550 bytes 26 files changed, 1101 insertions(+), 769 deletions(-) rename {src/thisWorkbook => documents}/Tukin_C1_Action.md (100%) rename {src/thisWorkbook => documents}/Tukin_C1_Mapping.md (100%) rename {src/thisWorkbook => documents}/Tukin_Cache_Mapping.md (100%) create mode 100644 src/init_module/Import_modules.bas rename src/{module => init_module}/Test_Cache.bas (99%) create mode 100644 src/module/Common_Button.bas rename src/module/{Read_Common.bas => Common_File_Utils.bas} (58%) rename src/module/{Module_Common.bas => Common_Functions.bas} (76%) rename src/module/{Generic_Master_Common.bas => Common_Generic_Master.bas} (98%) rename src/module/{Global_Cache.bas => Common_Global_Cache.bas} (91%) rename src/module/{Build_Select.bas => Common_Selector.bas} (98%) delete mode 100644 src/module/Validate_Common.bas delete mode 100644 src/module/Write_Common.bas rename src/{thisWorkbook/Tukin_C1.bas => sheet/C1.cls} (96%) rename src/{thisWorkbook/Master_M1_Kukan.bas => sheet/M1.cls} (92%) rename src/{thisWorkbook/Master_M2_Kukan_detail.bas => sheet/M2.cls} (93%) rename src/{thisWorkbook/Master_O1_address.bas => sheet/O1.cls} (86%) rename src/{thisWorkbook/Master_O2_507.bas => sheet/O2.cls} (64%) rename src/{thisWorkbook/Master_Z1_222.bas => sheet/Z1.cls} (94%) rename src/{thisWorkbook/Master_Z2_223.bas => sheet/Z2.cls} (94%) rename src/{thisWorkbook/Master_Z3_224.bas => sheet/Z3.cls} (96%) rename src/{thisWorkbook/Master_Z4_220.bas => sheet/Z4.cls} (96%) create mode 100644 test.xlsm create mode 100644 test.xlsx diff --git a/src/thisWorkbook/Tukin_C1_Action.md b/documents/Tukin_C1_Action.md similarity index 100% rename from src/thisWorkbook/Tukin_C1_Action.md rename to documents/Tukin_C1_Action.md diff --git a/src/thisWorkbook/Tukin_C1_Mapping.md b/documents/Tukin_C1_Mapping.md similarity index 100% rename from src/thisWorkbook/Tukin_C1_Mapping.md rename to documents/Tukin_C1_Mapping.md diff --git a/src/thisWorkbook/Tukin_Cache_Mapping.md b/documents/Tukin_Cache_Mapping.md similarity index 100% rename from src/thisWorkbook/Tukin_Cache_Mapping.md rename to documents/Tukin_Cache_Mapping.md diff --git a/src/init_module/Import_modules.bas b/src/init_module/Import_modules.bas new file mode 100644 index 0000000..ecf6c45 --- /dev/null +++ b/src/init_module/Import_modules.bas @@ -0,0 +1,198 @@ +Option Explicit + +' Main entry: Validate all files and targets first. Import only if everything is OK. +Sub ImportModulesAndSheets_Safe() + Dim fso As Object + Set fso = CreateObject("Scripting.FileSystemObject") + + Const MODULE_PATH As String = "D:\Project\upds7\vba\src\module" + Const SHEET_PATH As String = "D:\Project\upds7\vba\src\sheet" + + ' --- Phase 1: Validation --- + Debug.Print "[LOG] Starting validation phase..." + Dim validationErrors As String + validationErrors = ValidateAllFilesAndTargets(MODULE_PATH, SHEET_PATH) + + If validationErrors <> "" Then + MsgBox "Validation failed. Import aborted:" & vbCrLf & vbCrLf & validationErrors, vbCritical + Debug.Print "[LOG] Validation failed. Aborting import." + Exit Sub + End If + + ' --- Phase 2: Perform import --- + On Error GoTo ImportError + Application.ScreenUpdating = False + + Debug.Print "[LOG] Validation passed. Starting import phase..." + ImportStandardModules MODULE_PATH + ImportSheetCLSFiles SHEET_PATH + + Application.ScreenUpdating = True + MsgBox "All .bas and .cls files imported successfully!", vbInformation + Debug.Print "[LOG] Import completed successfully." + Exit Sub + +ImportError: + Application.ScreenUpdating = True + MsgBox "Error during import: " & Err.Description, vbCritical + Debug.Print "[ERROR] Import error (" & Err.Number & "): " & Err.Description +End Sub + +' Validate existence of folders, files, and target components +Private Function ValidateAllFilesAndTargets(modulePath As String, sheetPath As String) As String + Dim fso As Object + Set fso = CreateObject("Scripting.FileSystemObject") + + Dim msg As String + + ' Check module folder + Debug.Print "[LOG] Validating module folder: " & modulePath + If Not fso.FolderExists(modulePath) Then + msg = msg & "• Module folder not found: " & modulePath & vbCrLf + Debug.Print "[WARNING] Module folder not found." + Else + Dim file As Object + For Each file In fso.GetFolder(modulePath).Files + If LCase(fso.GetExtensionName(file.Name)) = "bas" Then + Dim modName As String + modName = fso.GetBaseName(file.Name) + Debug.Print "[LOG] Found .bas file: " & file.Name & " (CodeName: " & modName & ")" + If Not IsValidVBComponentName(modName) Then + msg = msg & "• Invalid module name (.bas): '" & modName & "'" & vbCrLf + Debug.Print "[WARNING] Invalid module name: " & modName + End If + End If + Next file + End If + + ' Check sheet folder + Debug.Print "[LOG] Validating sheet folder: " & sheetPath + If Not fso.FolderExists(sheetPath) Then + msg = msg & "• Sheet macro folder not found: " & sheetPath & vbCrLf + Debug.Print "[WARNING] Sheet folder not found." + Else + For Each file In fso.GetFolder(sheetPath).Files + If LCase(fso.GetExtensionName(file.Name)) = "cls" Then + Dim sheetCodeName As String + sheetCodeName = fso.GetBaseName(file.Name) + Debug.Print "[LOG] Found .cls file: " & file.Name & " (Target CodeName: " & sheetCodeName & ")" + + Dim cmp As Object + On Error Resume Next + Set cmp = ThisWorkbook.VBProject.VBComponents(sheetCodeName) + On Error GoTo 0 + + If cmp Is Nothing Then + msg = msg & "• No worksheet with CodeName: '" & sheetCodeName & "'" & vbCrLf + Debug.Print "[WARNING] Worksheet with CodeName '" & sheetCodeName & "' not found." + ElseIf cmp.Type <> 100 Then ' 100 = xlWorksheet + msg = msg & "• Name exists but is not a worksheet: '" & sheetCodeName & "'" & vbCrLf + Debug.Print "[WARNING] Component '" & sheetCodeName & "' exists but is not a worksheet." + End If + End If + Next file + End If + + ValidateAllFilesAndTargets = msg +End Function + +' Check if name is a valid VBA component name (ASCII only, starts with letter) +Private Function IsValidVBComponentName(name As String) As Boolean + If name = "" Then Exit Function + If Not (name Like "[A-Za-z]*") Then Exit Function + Dim i As Long + For i = 1 To Len(name) + Dim c As String + c = Mid(name, i, 1) + If Not (c Like "[A-Za-z0-9_]") Then Exit Function + Next i + IsValidVBComponentName = True +End Function + +' Import all .bas files as standard modules (assumes validation passed) +Private Sub ImportStandardModules(folderPath As String) + Dim fso As Object, file As Object + Set fso = CreateObject("Scripting.FileSystemObject") + + Debug.Print "[LOG] Starting import of standard modules from: " & folderPath + For Each file In fso.GetFolder(folderPath).Files + If LCase(fso.GetExtensionName(file.Name)) = "bas" Then + Dim modName As String + modName = fso.GetBaseName(file.Name) + Debug.Print "[LOG] Processing module: " & file.Path + + ' Remove existing module if any + On Error Resume Next + ThisWorkbook.VBProject.VBComponents.Remove ThisWorkbook.VBProject.VBComponents(modName) + On Error GoTo 0 + Debug.Print "[LOG] Removed existing module (if any): " & modName + + ' Import new one + ThisWorkbook.VBProject.VBComponents.Import file.Path + Debug.Print "[LOG] Successfully imported: " & file.Path + End If + Next file + Debug.Print "[LOG] Finished importing standard modules." +End Sub + +' Import .cls files into worksheet code modules (by CodeName) +Private Sub ImportSheetCLSFiles(folderPath As String) + Dim fso As Object, file As Object + Set fso = CreateObject("Scripting.FileSystemObject") + + Debug.Print "[LOG] Starting import of sheet code modules from: " & folderPath + For Each file In fso.GetFolder(folderPath).Files + If LCase(fso.GetExtensionName(file.Name)) = "cls" Then + Dim sheetCodeName As String + sheetCodeName = fso.GetBaseName(file.Name) + Debug.Print "[LOG] Processing sheet code: " & file.Path & " -> " & sheetCodeName + + Dim cmp As Object + Set cmp = ThisWorkbook.VBProject.VBComponents(sheetCodeName) ' Safe: already validated + + Dim pureCode As String + pureCode = ExtractPureCodeFromCls(file.Path) + + With cmp.CodeModule + If .CountOfLines > 0 Then .DeleteLines 1, .CountOfLines + If Trim(pureCode) <> "" Then .AddFromString pureCode + End With + Debug.Print "[LOG] Successfully updated code for: " & sheetCodeName + End If + Next file + Debug.Print "[LOG] Finished importing sheet code modules." +End Sub + +' Extract only the VBA source code from a .cls file (skip VERSION, BEGIN, Attribute lines) +Private Function ExtractPureCodeFromCls(filePath As String) As String + Dim fso As Object, ts As Object, line As String + Set fso = CreateObject("Scripting.FileSystemObject") + Set ts = fso.OpenTextFile(filePath, 1) + + Dim result As String + Dim inCodeSection As Boolean: inCodeSection = False + + Do While Not ts.AtEndOfStream + line = ts.ReadLine + + If inCodeSection Then + result = result & line & vbCrLf + Else + Dim tLine As String: tLine = Trim(line) + If tLine = "" Then + inCodeSection = True + ElseIf Left(tLine, 7) = "VERSION" Or _ + Left(tLine, 5) = "BEGIN" Or _ + Left(tLine, 3) = "END" Or _ + Left(tLine, 9) = "Attribute" Then + ' Skip metadata lines + Else + inCodeSection = True + result = result & line & vbCrLf + End If + End If + Loop + + ts.Close + ExtractPureCodeFromCls = result +End Function \ No newline at end of file diff --git a/src/module/Test_Cache.bas b/src/init_module/Test_Cache.bas similarity index 99% rename from src/module/Test_Cache.bas rename to src/init_module/Test_Cache.bas index 9acf82e..d7bc594 100644 --- a/src/module/Test_Cache.bas +++ b/src/init_module/Test_Cache.bas @@ -1,3 +1,5 @@ +Attribute VB_Name = "Test_Cache" +Option Explicit ' ============================================================ ' Module Name: Test_Cache ' Module Desc: Debug module to print cache contents to Test_Cache sheet diff --git a/src/module/Common_Button.bas b/src/module/Common_Button.bas new file mode 100644 index 0000000..32a5874 --- /dev/null +++ b/src/module/Common_Button.bas @@ -0,0 +1,112 @@ +Attribute VB_Name = "Common_Button" +Option Explicit +' ============================================================ +' Module Name: Common_Button +' Module Desc: Common_Button +' Module Methods: +' - Import +' ============================================================ +Sub CSV_Import_Button() + DO_CSV_Import ActiveSheet +End Sub + +Sub Validation_Button() + Do_Validation ActiveSheet +End Sub + +Sub CSV_Export_Button() + CSV_Import ActiveSheet +End Sub + +Sub Do_Sort_Button() + Do_Sort ActiveSheet +End Sub + +Sub Do_Filter_Button() + Do_Filter ActiveSheet +End Sub + +Sub Do_Fit_Button() + Do_Fit ActiveSheet +End Sub + +Private Sub DO_CSV_Import(ws As Excel.Worksheet) + Dim macroName As String + macroName = ws.CodeName & ".Import" + + If Not ProcedureExists(ws.CodeName, "Import") Then + MsgBox "worksheet """ & ws.name & """ unimplement methods", vbExclamation + Exit Sub + End If + + On Error GoTo ErrorHandler + Application.Run macroName, ws + Exit Sub + +ErrorHandler: + MsgBox "error" & Err.Description, vbCritical +End Sub + +Private Sub Do_Validation(ws As Excel.Worksheet) + If dataRangeDict Is Nothing Then Call RefreshDataRangeDict + Dim dataRange As Variant: dataRange = dataRangeDict(ws.CodeName) + + ' step1. confirm Validate Sub + Dim validate As String + validate = ws.CodeName & ".Validate" + + If Not ProcedureExists(ws.CodeName, "Validate") Then + MsgBox "worksheet """ & ws.name & """ unimplement methods", vbExclamation + Exit Sub + End If + + ' step2. confirm data range + Dim lastDataRow As Long, r As Long, errorCount As Long + lastDataRow = GetLastDataRowInRange(ws) + + Dim startRow As Long: startRow = dataRange(3) + Dim errorCol As Long: errorCol = ws.Range(dataRange(2) & "1").Column + If lastDataRow < startRow Then + MsgBox "No data found.", vbExclamation + Exit Sub + End If + + For r = startRow To lastDataRow + On Error GoTo ErrorHandler + Application.Run validate, ws, r, lastDataRow + If Trim(ws.Cells(r, errorCol).Value) <> "" Then + errorCount = errorCount + 1 + End If + Next r + + ' === Refresh ws cache after validation passes === + If errorCount = 0 Then + Dim cacheMethodName As String: cacheMethodName = dataRange(5) + If + '' TODO + Call RefreshM1Cache + End If + + MsgBox "Validation complete. Errors: " & errorCount, vbInformation + +ErrorHandler: + MsgBox "error" & Err.Description, vbCritical +End Sub + + + + + + + + + +Private Function ProcedureExists(moduleName As String, procName As String) As Boolean + Dim VBProj As Object, VBComp As Object, CodeMod As Object + Set VBProj = ThisWorkbook.VBProject + Set VBComp = VBProj.VBComponents(moduleName) + If Not VBComp Is Nothing Then + Set CodeMod = VBComp.CodeModule + ProcedureExists = (CodeMod.ProcStartLine(procName, 0) > 0) + End If +End Function \ No newline at end of file diff --git a/src/module/Read_Common.bas b/src/module/Common_File_Utils.bas similarity index 58% rename from src/module/Read_Common.bas rename to src/module/Common_File_Utils.bas index f9a7e17..4386b13 100644 --- a/src/module/Read_Common.bas +++ b/src/module/Common_File_Utils.bas @@ -1,198 +1,347 @@ -' ============================================================ -' Module Name: Read_Common -' Module Desc: CSV read functions -' Module Methods: -' - SelectCSVFile -' - ReadCSVAs2DArrayStrict -' - ParseCSVLines -' ============================================================ - -Function SelectCSVFile() As String - Dim fileDialog As FileDialog - Set fileDialog = Application.FileDialog(msoFileDialogFilePicker) - - With fileDialog - .Filters.Clear - .Filters.Add "CSV Files", "*.csv" - .AllowMultiSelect = False - If .Show <> -1 Then - SelectCSVFile = "" - Exit Function - End If - SelectCSVFile = .SelectedItems(1) - End With -End Function - -' Read a CSV file and return its content as a strict 2D array (1-based). -' All rows must have the same number of columns as the first row. -' If the file is empty and defaultColumnCount > 0, returns an empty 2D array with zero rows and defaultColumnCount columns. -' Parameters: -' filePath: Full path to the CSV file. -' charset: Text encoding (e.g., "cp932", "utf-8"). -' defaultColumnCount: Optional. Used only if CSV has no rows. Must be >= 0. -Function ReadCSVAs2DArrayStrict( _ - ByVal filePath As String, _ - ByVal expectedColumnCount As Long, _ - Optional ByVal charset As String = "cp932", _ - Optional ByVal hasHeader As Boolean = False) As Variant - - ' === validate expectedColumnCount === - If expectedColumnCount <= 0 Then - Err.Raise 5001, , "expectedColumnCount must be >= 1." - End If - - If Dir(filePath) = "" Then - Err.Raise 5002, , "File not found: " & filePath - End If - - ' === read csv file === - Dim stream As Object - Set stream = CreateObject("ADODB.Stream") - With stream - .Type = 2 ' adTypeText - .charset = charset - .Open - .LoadFromFile filePath - Dim textContent As String - textContent = .ReadText - .Close - End With - - ' === standardize === - textContent = Replace(textContent, vbCrLf, vbLf) - textContent = Replace(textContent, vbCr, vbLf) - - ' === transfer into collection === - Dim lines As Collection - Set lines = ParseCSVLines(textContent) - - ' === validate empty === - If lines.Count = 0 Then - Err.Raise 5003, , "CSV file is empty." - End If - - If lines.Count = 1 Then - If hasHeader Then - Err.Raise 5005, , "CSV file data is empty." - End If - End If - - ' === loop the row, validate column count === - Dim i As Long - For i = 1 To lines.Count - Dim rowArr As Variant - rowArr = lines(i) - Dim actualCols As Long - actualCols = UBound(rowArr) - LBound(rowArr) + 1 - - If actualCols <> expectedColumnCount Then - Err.Raise 5004, , "Row " & i & ": Expected " & expectedColumnCount & " columns, got " & actualCols & "." - End If - Next i - - Dim result As Variant - Dim startRow As Long - If hasHeader Then - startRow = 2 - Else - startRow = 1 - End If - - ReDim result(startRow To lines.Count, 1 To expectedColumnCount) - - For i = startRow To lines.Count - rowArr = lines(i) - Dim j As Long - For j = LBound(rowArr) To UBound(rowArr) - result(i, j - LBound(rowArr) + 1) = rowArr(j) - Next j - Next i - - ReadCSVAs2DArrayStrict = result -End Function - -' Helper function: Parse CSV text into collection of string arrays (zero-based per row) -Private Function ParseCSVLines(ByVal csvText As String) As Collection - Set ParseCSVLines = New Collection - Dim length As Long: length = Len(csvText) - If length = 0 Then Exit Function - - Dim i As Long: i = 1 - Dim currentField As String - Dim currentRow As Collection: Set currentRow = New Collection - Dim inQuotes As Boolean - Dim c As String - - Do While i <= length - c = Mid$(csvText, i, 1) - Select Case c - Case """" - If inQuotes Then - If i < length And Mid$(csvText, i + 1, 1) = """" Then - currentField = currentField & """" - i = i + 2 - Else - inQuotes = False - i = i + 1 - End If - Else - inQuotes = True - i = i + 1 - End If - Case "," - If inQuotes Then - currentField = currentField & c - i = i + 1 - Else - ' Clean field before adding - currentField = Trim(currentField) - currentField = Replace(currentField, vbCr, "") - currentField = Replace(currentField, vbLf, "") - currentRow.Add currentField - currentField = "" - i = i + 1 - End If - Case vbLf - If inQuotes Then - currentField = currentField & c - i = i + 1 - Else - currentRow.Add currentField - Dim arr() As String - If currentRow.Count > 0 Then - ReDim arr(0 To currentRow.Count - 1) - Dim k As Long - For k = 1 To currentRow.Count - arr(k - 1) = currentRow(k) - Next k - End If - ParseCSVLines.Add arr - Set currentRow = New Collection - currentField = "" - inQuotes = False - i = i + 1 - End If - Case Else - currentField = currentField & c - i = i + 1 - End Select - Loop - - ' Handle last row without trailing newline - If currentField <> "" Or currentRow.Count > 0 Then - ' Clean field before adding - currentField = Trim(currentField) - currentField = Replace(currentField, vbCr, "") - currentField = Replace(currentField, vbLf, "") - currentRow.Add currentField - Dim lastArr() As String - If currentRow.Count > 0 Then - ReDim lastArr(0 To currentRow.Count - 1) - Dim m As Long - For m = 1 To currentRow.Count - lastArr(m - 1) = currentRow(m) - Next m - End If - ParseCSVLines.Add lastArr - End If +Attribute VB_Name = "Common_File_Utils" +Option Explicit +' ============================================================ +' Module Name: Write_Common +' Module Desc: CSV write functions +' Module Methods: +' - GetSaveCSVPath +' - WriteCSVFromArray +' ============================================================ + +Function GetSaveCSVPath(Optional ByVal defaultName As String = "") As String + Dim savePath As String + savePath = Application.GetSaveAsFilename( _ + FileFilter:="CSV Files (*.csv), *.csv", _ + Title:="Save CSV", _ + InitialFileName:=defaultName) + + If savePath = "False" Or savePath = "" Then + GetSaveCSVPath = "" + Exit Function + End If + + If InStr(1, savePath, ".csv", vbTextCompare) = 0 Then + savePath = savePath & ".csv" + End If + + GetSaveCSVPath = savePath +End Function + +' Writes a 2D array to a CSV file +Sub WriteCSVFromArray( _ + ByVal filePath As String, _ + ByVal data As Variant, _ + Optional ByVal Charset As String = "shift_jis", _ + Optional ByVal alwaysQuote As Boolean = False _ +) + ' === Input validation === + If Not IsArray(data) Then + Err.Raise 513, , "Input 'data' must be an array." + End If + + Dim numDims As Long + On Error Resume Next + numDims = ArrayDimensions(data) + On Error GoTo 0 + If numDims <> 2 Then + Err.Raise 514, , "Input array must be 2-dimensional." + End If + + Dim rows As Long, cols As Long + rows = UBound(data, 1) - LBound(data, 1) + 1 + cols = UBound(data, 2) - LBound(data, 2) + 1 + + If rows = 0 Or cols = 0 Then Exit Sub ' Empty array, exit early + + ' === Build CSV content === + Dim outputLines As Collection + Set outputLines = New Collection + + Dim i As Long, j As Long + Dim rowStr As String + Dim field As String + Dim needsQuote As Boolean + + For i = LBound(data, 1) To UBound(data, 1) + Dim fields As Variant + ReDim fields(1 To cols) + + For j = LBound(data, 2) To UBound(data, 2) + ' Safely convert variant to string + field = SafeToString(data(i, j)) + + ' Determine if the field needs quoting (per RFC 4180) + needsQuote = alwaysQuote Or (InStr(field, """") > 0) Or _ + (InStr(field, ",") > 0) Or _ + (InStr(field, vbLf) > 0) Or _ + (InStr(field, vbCrLf) > 0) Or _ + (InStr(field, vbCr) > 0) Or _ + (Left(field, 1) = " " Or Right(field, 1) = " ") + + If needsQuote Then + ' Escape double quotes: "" represents a single " + field = """" & Replace(field, """", """""") & """" + End If + + fields(j - LBound(data, 2) + 1) = field + Next j + + rowStr = Join(fields, ",") + outputLines.Add rowStr + Next i + + ' Concatenate all lines + Dim finalContent As String + finalContent = Join(CollectionToArray(outputLines), vbCrLf) + + ' === Write to file === + Dim stream As Object + Set stream = CreateObject("ADODB.Stream") + With stream + .Type = 2 ' adTypeText + .Charset = Charset + .Open + .WriteText finalContent, 0 ' adWriteChar + .SaveToFile filePath, 2 ' adSaveCreateOverWrite + .Close + End With +End Sub + +' Helper function: safely convert any Variant to a string +Private Function SafeToString(ByVal v As Variant) As String + On Error Resume Next + If IsNull(v) Or IsEmpty(v) Then + SafeToString = "" + Else + SafeToString = CStr(v) + End If + On Error GoTo 0 +End Function + +' Helper function: get the number of dimensions of an array (1, 2, ...) +Private Function ArrayDimensions(arr As Variant) As Long + Dim dimCount As Long + On Error GoTo ExitPoint + Do + dimCount = dimCount + 1 + Dim tmp As Long + tmp = UBound(arr, dimCount) + Loop +ExitPoint: + ArrayDimensions = dimCount - 1 +End Function + +' Helper function: convert a Collection to a 1D array (for use with Join) +Private Function CollectionToArray(col As Collection) As Variant + If col.Count = 0 Then + CollectionToArray = Array() + Exit Function + End If + + Dim arr() As String + ReDim arr(1 To col.Count) + Dim i As Long + For i = 1 To col.Count + arr(i) = col(i) + Next i + CollectionToArray = arr +End Function + +' ============================================================ +' Module Name: Read_Common +' Module Desc: CSV read functions +' Module Methods: +' - SelectCSVFile +' - ReadCSVAs2DArrayStrict +' - ParseCSVLines +' ============================================================ + +Function SelectCSVFile() As String + Dim fileDialog As FileDialog + Set fileDialog = Application.FileDialog(msoFileDialogFilePicker) + + With fileDialog + .Filters.Clear + .Filters.Add "CSV Files", "*.csv" + .AllowMultiSelect = False + If .Show <> -1 Then + SelectCSVFile = "" + Exit Function + End If + SelectCSVFile = .SelectedItems(1) + End With +End Function + +' Read a CSV file and return its content as a strict 2D array (1-based). +' All rows must have the same number of columns as the first row. +' If the file is empty and defaultColumnCount > 0, returns an empty 2D array with zero rows and defaultColumnCount columns. +' Parameters: +' filePath: Full path to the CSV file. +' charset: Text encoding (e.g., "cp932", "utf-8"). +' defaultColumnCount: Optional. Used only if CSV has no rows. Must be >= 0. +Function ReadCSVAs2DArrayStrict( _ + ByVal filePath As String, _ + ByVal expectedColumnCount As Long, _ + Optional ByVal charset As String = "cp932", _ + Optional ByVal hasHeader As Boolean = False) As Variant + + ' === validate expectedColumnCount === + If expectedColumnCount <= 0 Then + Err.Raise 5001, , "expectedColumnCount must be >= 1." + End If + + If Dir(filePath) = "" Then + Err.Raise 5002, , "File not found: " & filePath + End If + + ' === read csv file === + Dim stream As Object + Set stream = CreateObject("ADODB.Stream") + With stream + .Type = 2 ' adTypeText + .charset = charset + .Open + .LoadFromFile filePath + Dim textContent As String + textContent = .ReadText + .Close + End With + + ' === standardize === + textContent = Replace(textContent, vbCrLf, vbLf) + textContent = Replace(textContent, vbCr, vbLf) + + ' === transfer into collection === + Dim lines As Collection + Set lines = ParseCSVLines(textContent) + + ' === validate empty === + If lines.Count = 0 Then + Err.Raise 5003, , "CSV file is empty." + End If + + If lines.Count = 1 Then + If hasHeader Then + Err.Raise 5005, , "CSV file data is empty." + End If + End If + + ' === loop the row, validate column count === + Dim i As Long + For i = 1 To lines.Count + Dim rowArr As Variant + rowArr = lines(i) + Dim actualCols As Long + actualCols = UBound(rowArr) - LBound(rowArr) + 1 + + If actualCols <> expectedColumnCount Then + Err.Raise 5004, , "Row " & i & ": Expected " & expectedColumnCount & " columns, got " & actualCols & "." + End If + Next i + + Dim result As Variant + Dim startRow As Long + If hasHeader Then + startRow = 2 + Else + startRow = 1 + End If + + ReDim result(startRow To lines.Count, 1 To expectedColumnCount) + + For i = startRow To lines.Count + rowArr = lines(i) + Dim j As Long + For j = LBound(rowArr) To UBound(rowArr) + result(i, j - LBound(rowArr) + 1) = rowArr(j) + Next j + Next i + + ReadCSVAs2DArrayStrict = result +End Function + +' Helper function: Parse CSV text into collection of string arrays (zero-based per row) +Private Function ParseCSVLines(ByVal csvText As String) As Collection + Set ParseCSVLines = New Collection + Dim length As Long: length = Len(csvText) + If length = 0 Then Exit Function + + Dim i As Long: i = 1 + Dim currentField As String + Dim currentRow As Collection: Set currentRow = New Collection + Dim inQuotes As Boolean + Dim c As String + + Do While i <= length + c = Mid$(csvText, i, 1) + Select Case c + Case """" + If inQuotes Then + If i < length And Mid$(csvText, i + 1, 1) = """" Then + currentField = currentField & """" + i = i + 2 + Else + inQuotes = False + i = i + 1 + End If + Else + inQuotes = True + i = i + 1 + End If + Case "," + If inQuotes Then + currentField = currentField & c + i = i + 1 + Else + ' Clean field before adding + currentField = Trim(currentField) + currentField = Replace(currentField, vbCr, "") + currentField = Replace(currentField, vbLf, "") + currentRow.Add currentField + currentField = "" + i = i + 1 + End If + Case vbLf + If inQuotes Then + currentField = currentField & c + i = i + 1 + Else + currentRow.Add currentField + Dim arr() As String + If currentRow.Count > 0 Then + ReDim arr(0 To currentRow.Count - 1) + Dim k As Long + For k = 1 To currentRow.Count + arr(k - 1) = currentRow(k) + Next k + End If + ParseCSVLines.Add arr + Set currentRow = New Collection + currentField = "" + inQuotes = False + i = i + 1 + End If + Case Else + currentField = currentField & c + i = i + 1 + End Select + Loop + + ' Handle last row without trailing newline + If currentField <> "" Or currentRow.Count > 0 Then + ' Clean field before adding + currentField = Trim(currentField) + currentField = Replace(currentField, vbCr, "") + currentField = Replace(currentField, vbLf, "") + currentRow.Add currentField + Dim lastArr() As String + If currentRow.Count > 0 Then + ReDim lastArr(0 To currentRow.Count - 1) + Dim m As Long + For m = 1 To currentRow.Count + lastArr(m - 1) = currentRow(m) + Next m + End If + ParseCSVLines.Add lastArr + End If End Function \ No newline at end of file diff --git a/src/module/Module_Common.bas b/src/module/Common_Functions.bas similarity index 76% rename from src/module/Module_Common.bas rename to src/module/Common_Functions.bas index dc87483..a6f9a7d 100644 --- a/src/module/Module_Common.bas +++ b/src/module/Common_Functions.bas @@ -1,254 +1,303 @@ -' ============================================================ -' Module Name: Module_Common -' Module Desc: Common utility functions for all modules -' Module Methods: -' - GetLastDataRowInRange -' - ClearDataRows -' - ClearDataRow -' - SortDataRows -' - ToggleAutoFilter -' - AutoFitColumnWidth -' - GetSaveCSVPath -' ============================================================ - -' Common Functions - -' Get CSV header from specified row and columns -Function GetCSVHeader(ByVal ws As Worksheet, ByVal colLetters As Variant, ByVal headerRow As Long) As Variant - Dim colCount As Long: colCount = UBound(colLetters) - LBound(colLetters) + 1 - Dim headerArr() As String - ReDim headerArr(1 To 1, 1 To colCount) - - Dim i As Long - Dim cellValue As String - For i = 0 To colCount - 1 - cellValue = Trim(ws.Cells(headerRow, Columns(colLetters(i)).Column).Value) - cellValue = Replace(cellValue, vbLf, "") - cellValue = Replace(cellValue, vbCr, "") - cellValue = Replace(cellValue, vbCrLf, "") - headerArr(1, i + 1) = cellValue - Next i - - GetCSVHeader = headerArr -End Function - -Function CleanCSVField(ByVal inputStr As String) As String - Dim s As String - s = Trim(inputStr) - - ' calcute - If Len(s) > 0 Then - Select Case Left(s, 1) - Case "=", "+", "-", "@" - CleanCSVField = "'" & s - Exit Function - End Select - End If - - CleanCSVField = s -End Function - -Function GetLastDataRow(ByVal ws As Worksheet, ByVal columnNum As Long) As Long - GetLastDataRow = ws.Cells(ws.Rows.Count, columnNum).End(xlUp).Row -End Function - -' @return dict : key = keyCol,value = Array -' @param sheetName -' @param keyCol -' @param valueCols Array(4,5,6) -' @param startRow default is 7 -Function LoadLookup( _ - ByVal sheetName As String, _ - ByVal keyCol As Long, _ - ByVal valueCols As Variant, _ - Optional ByVal startRow As Long = 7 _ -) As Object - - ' --- validate --- - If Trim(sheetName) = "" Then Exit Function - If Not IsArray(valueCols) Then - valueCols = Array(valueCols) - End If - Dim nValCols As Long: nValCols = UBound(valueCols) - LBound(valueCols) + 1 - If nValCols = 0 Then Exit Function - - ' --- obtain worksheet --- - On Error Resume Next - Dim ws As Worksheet: Set ws = ThisWorkbook.Worksheets(sheetName) - On Error GoTo 0 - If ws Is Nothing Then Exit Function - - ' --- obtain data(based on keyCol)--- - Dim lastRow As Long: lastRow = ws.Cells(ws.Rows.Count, keyCol).End(xlUp).Row - If lastRow < startRow Then Exit Function - - ' --- prepare col --- - Dim minCol As Long: minCol = keyCol - Dim maxCol As Long: maxCol = keyCol - Dim i As Long - For i = LBound(valueCols) To UBound(valueCols) - If Not IsNumeric(valueCols(i)) Then Exit Function - Dim colNum As Long: colNum = CLng(valueCols(i)) - If colNum < 1 Then Exit Function - If colNum < minCol Then minCol = colNum - If colNum > maxCol Then maxCol = colNum - Next i - - ' --- read --- - Dim dataRange As Range - Set dataRange = ws.Range(ws.Cells(startRow, minCol), ws.Cells(lastRow, maxCol)) - Dim data As Variant: data = dataRange.Value - - ' --- Ensure data is a 2D array --- - If Not IsArray(data) Then - ' Single cell case - Dim temp As Variant - ReDim temp(1 To 1, 1 To (maxCol - minCol + 1)) - temp(1, 1) = data - data = temp - End If - - ' --- build --- - Dim keyOffset As Long: keyOffset = keyCol - minCol + 1 - Dim valOffsets() As Long: ReDim valOffsets(0 To nValCols - 1) - For i = 0 To nValCols - 1 - valOffsets(i) = valueCols(LBound(valueCols) + i) - minCol + 1 - Next i - - ' --- write into --- - Dim dict As Object: Set dict = CreateObject("Scripting.Dictionary") - dict.CompareMode = vbTextCompare - - Dim r As Long - For r = 1 To UBound(data, 1) - Dim key As String: key = Trim(data(r, keyOffset)) - If key <> "" Then - Dim vals() As String: ReDim vals(0 To nValCols - 1) - Dim j As Long - For j = 0 To nValCols - 1 - vals(j) = Trim(data(r, valOffsets(j))) - Next j - dict(key) = vals - End If - Next r - - Set LoadLookup = dict -End Function - -Function GetLastDataRowInRange(ws As Worksheet, ByVal startCol As Long, ByVal endCol As Long, Optional ByVal startRow As Long = 7) As Long - ' --- validate --- - If startCol < 1 Then - Err.Raise 1001, "GetLastDataRowInRange", "startCol must >= 1" - End If - If endCol < 1 Then - Err.Raise 1002, "GetLastDataRowInRange", "endCol must >= 1" - End If - If endCol < startCol Then - Err.Raise 1003, "GetLastDataRowInRange", "endCol must >= startCol" - End If - If startRow < 1 Then - Err.Raise 1004, "GetLastDataRowInRange", "startRow must >= 1" - End If - - ' --- query max row --- - Dim colIndex As Long, lastRow As Long, maxRow As Long - - maxRow = startRow - 1 - For colIndex = startCol To endCol - lastRow = ws.Cells(ws.Rows.Count, colIndex).End(xlUp).Row - If lastRow > maxRow Then maxRow = lastRow - Next colIndex - - GetLastDataRowInRange = maxRow -End Function - -Function ClearDataRow(ByVal ws As Worksheet, ByVal startCol As Long, ByVal endCol As Long, ByVal rowRow As Long, Optional ByVal errorCol As Long = 2) - If rowRow >= 7 Then - Dim clearRange As Range: Set clearRange = ws.Range(ws.Cells(rowRow, startCol), ws.Cells(rowRow, endCol)) - clearRange.ClearContents - clearRange.Interior.Color = vbWhite - ws.Range(ws.Cells(rowRow, errorCol), ws.Cells(rowRow, errorCol)).ClearContents - End If -End Function - -Function ClearDataRows(ByVal ws As Worksheet, ByVal startCol As Long, ByVal endCol As Long, Optional ByVal startRow As Long = 7) - Dim lastDataRow As Long: lastDataRow = GetLastDataRowInRange(ws, startCol, endCol, startRow) - - If lastDataRow >= startRow Then - Dim clearRange As Range: Set clearRange = ws.Range(ws.Cells(startRow, startCol), ws.Cells(lastDataRow, endCol)) - clearRange.ClearContents - clearRange.Interior.Color = vbWhite - End If -End Function - -Sub SortDataRows(Optional ByVal sortColumn As Long = 3) - Dim ws As Worksheet - Dim lastRow As Long - Dim startRow As Long - Dim sortOrder As Long - - Set ws = ActiveSheet - startRow = 7 - lastRow = GetLastDataRow(ws, sortColumn) - - If lastRow < startRow Then - MsgBox "No data to sort.", vbExclamation - Exit Sub - End If - - ' Determine sort order based on first row's current state - Dim currentFirst As String - Dim nextFirst As String - currentFirst = Trim(ws.Cells(startRow, sortColumn).Value) - nextFirst = Trim(ws.Cells(startRow + 1, sortColumn).Value) - - If currentFirst <> "" And nextFirst <> "" Then - If currentFirst > nextFirst Then - sortOrder = xlAscending - Else - sortOrder = xlDescending - End If - Else - sortOrder = xlAscending - End If - - ws.Range(ws.Cells(startRow, 1), ws.Cells(lastRow, 20)).Sort _ - Key1:=ws.Cells(startRow, sortColumn), _ - Order1:=sortOrder, _ - Header:=xlNo -End Sub - -Sub ToggleAutoFilter(ByVal startColumn As Long, ByVal endColumn As Long, Optional ByVal filterRow As Long = 6) - Dim ws As Worksheet: Set ws = ActiveSheet - - ' Check if auto filter is already on - If ws.AutoFilterMode Then - ws.AutoFilterMode = False - Exit Sub - End If - If startColumn < 1 Or endColumn < startColumn Then Exit Sub - Dim filterRange As Range: Set filterRange = ws.Range(ws.Cells(filterRow, startColumn), ws.Cells(filterRow, endColumn)) - filterRange.AutoFilter -End Sub - -Sub AutoFitColumnWidth(ByVal fitColumnStart As Long, ByVal fitColumnEnd As Long) - Dim ws As Worksheet: Set ws = ActiveSheet - If fitColumnStart <= fitColumnEnd Then - ws.Range(ws.Columns(fitColumnStart), ws.Columns(fitColumnEnd)).AutoFit - End If -End Sub - -' Format: code:value (no space around colon) -Function MakeSelect(ByVal code As String, ByVal value As String) As String - MakeSelect = Trim(code) & ":" & Trim(value) -End Function - -' Get left part of MakeSelect format (e.g., "1:JR" -> "1") -Function GetCode(ByVal text As String) As String - Dim pos As Long: pos = InStr(text, ":") - If pos > 0 Then - GetCode = Left(text, pos - 1) - Else - GetCode = text - End If -End Function +Attribute VB_Name = "Common_Functions" +Option Explicit +' ============================================================ +' Module Name: Module_Common +' Module Desc: Common utility functions for all modules +' Module Methods: +' - GetLastDataRowInRange +' - ClearDataRows +' - ClearDataRow +' - SortDataRows +' - ToggleAutoFilter +' - AutoFitColumnWidth +' ============================================================ + +' Common Functions + +' Get CSV header from specified row and columns +Function GetCSVHeader(ByVal ws As Worksheet, ByVal colLetters As Variant, ByVal headerRow As Long) As Variant + Dim colCount As Long: colCount = UBound(colLetters) - LBound(colLetters) + 1 + Dim headerArr() As String + ReDim headerArr(1 To 1, 1 To colCount) + + Dim i As Long + Dim cellValue As String + For i = 0 To colCount - 1 + cellValue = Trim(ws.Cells(headerRow, Columns(colLetters(i)).Column).Value) + cellValue = Replace(cellValue, vbLf, "") + cellValue = Replace(cellValue, vbCr, "") + cellValue = Replace(cellValue, vbCrLf, "") + headerArr(1, i + 1) = cellValue + Next i + + GetCSVHeader = headerArr +End Function + +Function CleanCSVField(ByVal inputStr As String) As String + Dim s As String + s = Trim(inputStr) + + ' calcute + If Len(s) > 0 Then + Select Case Left(s, 1) + Case "=", "+", "-", "@" + CleanCSVField = "'" & s + Exit Function + End Select + End If + + CleanCSVField = s +End Function + +Function GetLastDataRow(ByVal ws As Worksheet, ByVal columnNum As Long) As Long + GetLastDataRow = ws.Cells(ws.Rows.Count, columnNum).End(xlUp).Row +End Function + +' @return dict : key = keyCol,value = Array +' @param sheetName +' @param keyCol +' @param valueCols Array(4,5,6) +' @param startRow default is 7 +Function LoadLookup( _ + ByVal sheetName As String, _ + ByVal keyCol As Long, _ + ByVal valueCols As Variant, _ + Optional ByVal startRow As Long = 7 _ +) As Object + + ' --- validate --- + If Trim(sheetName) = "" Then Exit Function + If Not IsArray(valueCols) Then + valueCols = Array(valueCols) + End If + Dim nValCols As Long: nValCols = UBound(valueCols) - LBound(valueCols) + 1 + If nValCols = 0 Then Exit Function + + ' --- obtain worksheet --- + On Error Resume Next + Dim ws As Worksheet: Set ws = ThisWorkbook.Worksheets(sheetName) + On Error GoTo 0 + If ws Is Nothing Then Exit Function + + ' --- obtain data(based on keyCol)--- + Dim lastRow As Long: lastRow = ws.Cells(ws.Rows.Count, keyCol).End(xlUp).Row + If lastRow < startRow Then Exit Function + + ' --- prepare col --- + Dim minCol As Long: minCol = keyCol + Dim maxCol As Long: maxCol = keyCol + Dim i As Long + For i = LBound(valueCols) To UBound(valueCols) + If Not IsNumeric(valueCols(i)) Then Exit Function + Dim colNum As Long: colNum = CLng(valueCols(i)) + If colNum < 1 Then Exit Function + If colNum < minCol Then minCol = colNum + If colNum > maxCol Then maxCol = colNum + Next i + + ' --- read --- + Dim dataRange As Range + Set dataRange = ws.Range(ws.Cells(startRow, minCol), ws.Cells(lastRow, maxCol)) + Dim data As Variant: data = dataRange.Value + + ' --- Ensure data is a 2D array --- + If Not IsArray(data) Then + ' Single cell case + Dim temp As Variant + ReDim temp(1 To 1, 1 To (maxCol - minCol + 1)) + temp(1, 1) = data + data = temp + End If + + ' --- build --- + Dim keyOffset As Long: keyOffset = keyCol - minCol + 1 + Dim valOffsets() As Long: ReDim valOffsets(0 To nValCols - 1) + For i = 0 To nValCols - 1 + valOffsets(i) = valueCols(LBound(valueCols) + i) - minCol + 1 + Next i + + ' --- write into --- + Dim dict As Object: Set dict = CreateObject("Scripting.Dictionary") + dict.CompareMode = vbTextCompare + + Dim r As Long + For r = 1 To UBound(data, 1) + Dim key As String: key = Trim(data(r, keyOffset)) + If key <> "" Then + Dim vals() As String: ReDim vals(0 To nValCols - 1) + Dim j As Long + For j = 0 To nValCols - 1 + vals(j) = Trim(data(r, valOffsets(j))) + Next j + dict(key) = vals + End If + Next r + + Set LoadLookup = dict +End Function + +' obtain +Function GetLastDataRowInRange(ws As Worksheet) As Long + + If dataRangeDict Is Nothing Then Call RefreshDataRangeDict + + If dataRangeDict.Exists(ws.CodeName) Then + Dim dataRange As Variant: dataRange = dataRangeDict(ws.CodeName) + + Dim startCol As Long, endCol As Long, startRow As Long + On Error GoTo InvalidColumn + startCol = ws.Range(dataRange(0) & "1").Column + endCol = ws.Range(dataRange(1) & "1").Column + startRow = dataRange(3) + On Error GoTo 0 + + ' --- query max row --- + Dim colIndex As Long, lastRow As Long, maxRow As Long + + maxRow = startRow - 1 + For colIndex = startCol To endCol + lastRow = ws.Cells(ws.Rows.Count, colIndex).End(xlUp).Row + If lastRow > maxRow Then maxRow = lastRow + Next colIndex + + GetLastDataRowInRange = maxRow + Else + Err.Raise 1004, "GetLastDataRowInRange", "Sheet not configured: " & ws.CodeName + End If + Exit Function + +InvalidColumn: + Err.Raise 1005, "GetLastDataRowInRange", "Invalid column letter for sheet: " & ws.CodeName +End Function + +Function ClearDataRow(ByVal ws As Worksheet, ByVal startCol As Long, ByVal endCol As Long, ByVal rowRow As Long, Optional ByVal errorCol As Long = 2) + If rowRow >= 7 Then + Dim clearRange As Range: Set clearRange = ws.Range(ws.Cells(rowRow, startCol), ws.Cells(rowRow, endCol)) + clearRange.ClearContents + clearRange.Interior.Color = vbWhite + ws.Range(ws.Cells(rowRow, errorCol), ws.Cells(rowRow, errorCol)).ClearContents + End If +End Function + +Function ClearDataRows(ByVal ws As Worksheet, ByVal startCol As Long, ByVal endCol As Long, Optional ByVal startRow As Long = 7) + Dim lastDataRow As Long: lastDataRow = GetLastDataRowInRange(ws, startCol, endCol, startRow) + + If lastDataRow >= startRow Then + Dim clearRange As Range: Set clearRange = ws.Range(ws.Cells(startRow, startCol), ws.Cells(lastDataRow, endCol)) + clearRange.ClearContents + clearRange.Interior.Color = vbWhite + End If +End Function + +Sub SortDataRows(Optional ByVal sortColumn As Long = 3) + Dim ws As Worksheet + Dim lastRow As Long + Dim startRow As Long + Dim sortOrder As Long + + Set ws = ActiveSheet + startRow = 7 + lastRow = GetLastDataRow(ws, sortColumn) + + If lastRow < startRow Then + MsgBox "No data to sort.", vbExclamation + Exit Sub + End If + + ' Determine sort order based on first row's current state + Dim currentFirst As String + Dim nextFirst As String + currentFirst = Trim(ws.Cells(startRow, sortColumn).Value) + nextFirst = Trim(ws.Cells(startRow + 1, sortColumn).Value) + + If currentFirst <> "" And nextFirst <> "" Then + If currentFirst > nextFirst Then + sortOrder = xlAscending + Else + sortOrder = xlDescending + End If + Else + sortOrder = xlAscending + End If + + ws.Range(ws.Cells(startRow, 1), ws.Cells(lastRow, 20)).Sort _ + Key1:=ws.Cells(startRow, sortColumn), _ + Order1:=sortOrder, _ + Header:=xlNo +End Sub + +Sub ToggleAutoFilter(ByVal startColumn As Long, ByVal endColumn As Long, Optional ByVal filterRow As Long = 6) + Dim ws As Worksheet: Set ws = ActiveSheet + + ' Check if auto filter is already on + If ws.AutoFilterMode Then + ws.AutoFilterMode = False + Exit Sub + End If + If startColumn < 1 Or endColumn < startColumn Then Exit Sub + Dim filterRange As Range: Set filterRange = ws.Range(ws.Cells(filterRow, startColumn), ws.Cells(filterRow, endColumn)) + filterRange.AutoFilter +End Sub + +Sub AutoFitColumnWidth(ByVal fitColumnStart As Long, ByVal fitColumnEnd As Long) + Dim ws As Worksheet: Set ws = ActiveSheet + If fitColumnStart <= fitColumnEnd Then + ws.Range(ws.Columns(fitColumnStart), ws.Columns(fitColumnEnd)).AutoFit + End If +End Sub + +' Format: code:value (no space around colon) +Function MakeSelect(ByVal code As String, ByVal value As String) As String + MakeSelect = Trim(code) & ":" & Trim(value) +End Function + +' Get left part of MakeSelect format (e.g., "1:JR" -> "1") +Function GetCode(ByVal text As String) As String + Dim pos As Long: pos = InStr(text, ":") + If pos > 0 Then + GetCode = Left(text, pos - 1) + Else + GetCode = text + End If +End Function + +' ============================================================ +' Format date input: YYYYMMDD or YYMMDD -> YYYY-MM-DD +' ============================================================ +Public Function FormatDateInput(ByVal inputStr As String) As String + Dim s As String: s = Trim(inputStr) + If s = "" Then Exit Function + + ' Only process pure digit strings + If Not IsNumeric(s) Then + FormatDateInput = inputStr + Exit Function + End If + + Dim yearPart As String, monthPart As String, dayPart As String + Dim dateStr As String + + If Len(s) = 8 Then + ' YYYYMMDD format + yearPart = Left(s, 4) + monthPart = Mid(s, 5, 2) + dayPart = Right(s, 2) + ElseIf Len(s) = 6 Then + ' YYMMDD format - add 20 prefix + yearPart = "20" & Left(s, 2) + monthPart = Mid(s, 3, 2) + dayPart = Right(s, 2) + Else + FormatDateInput = inputStr + Exit Function + End If + + ' Build date string and validate + dateStr = yearPart & "-" & monthPart & "-" & dayPart + + If IsDate(dateStr) Then + FormatDateInput = dateStr + Else + FormatDateInput = inputStr + End If +End Function diff --git a/src/module/Generic_Master_Common.bas b/src/module/Common_Generic_Master.bas similarity index 98% rename from src/module/Generic_Master_Common.bas rename to src/module/Common_Generic_Master.bas index e34b1e5..46bdc04 100644 --- a/src/module/Generic_Master_Common.bas +++ b/src/module/Common_Generic_Master.bas @@ -1,3 +1,5 @@ +Attribute VB_Name = "Common_Generic_Master" +Option Explicit ' ============================================================ ' Module Name: Generic_Master_Common ' Module Desc: Generic Master Import/Export functions diff --git a/src/module/Global_Cache.bas b/src/module/Common_Global_Cache.bas similarity index 91% rename from src/module/Global_Cache.bas rename to src/module/Common_Global_Cache.bas index 1e4d85c..328d0e2 100644 --- a/src/module/Global_Cache.bas +++ b/src/module/Common_Global_Cache.bas @@ -1,15 +1,17 @@ +Attribute VB_Name = "Common_Global_Cache" +Option Explicit ' ============================================================ ' Module Name: Global_Cache ' Module Desc: Global Cache Module, Shared caches across all worksheets ' Module Methods: -' - RefreshM1Cache / ClearM1Cache -' - RefreshM1KukanDCache / ClearM1KukanDCache -' - RefreshM2Cache / ClearM2Cache -' - RefreshZ1Cache / ClearZ1Cache -' - RefreshZ2Cache / ClearZ2Cache -' - RefreshZ3Cache / ClearZ3Cache -' - RefreshO1Cache / ClearO1Cache -' - RefreshO2Cache / ClearO2Cache +' - RefreshM1Cache +' - RefreshM1KukanDCache +' - RefreshM2Cache +' - RefreshZ1Cache +' - RefreshZ2Cache +' - RefreshZ3Cache +' - RefreshO1Cache +' - RefreshO2Cache ' ============================================================ ' Cache Variables @@ -27,6 +29,8 @@ Public oufukuList As Object Public koutaiList As Object Public higaitouList As Object +Public dataRangeDict As Object + ' m1Cache - used by M2_Kukan_detail, Tukin_C1 ' m1KukanDCache - nested dict {D: {F: [G]}} ' z1Cache - used by M1_Kukan, Tukin_C1 @@ -56,10 +60,6 @@ RefreshError: Err.Raise 1002, "RefreshM1Cache", "Failed to load M1 lookup cache: " & Err.Description End Sub -Public Sub ClearM1Cache() - Set m1Cache = Nothing -End Sub - ' Refresh M1_KukanD cache - nested dict {D: {F: [G]}} ' Structure: { 交通機関区分[D]: { 利用区間発名[F]: [利用区間着名G] } } Public Sub RefreshM1KukanDCache() @@ -105,10 +105,6 @@ NextRow2: Next r End Sub -Public Sub ClearM1KukanDCache() - Set m1KukanDCache = Nothing -End Sub - ' ============================================================ ' M2 Cache - Nested Dictionary ' Structure: { 区間コード[C]: { 券種[I]: { コード[J]: K } } } @@ -158,10 +154,6 @@ NextRow: Next r End Sub -Public Sub ClearM2Cache() - Set m2Cache = Nothing -End Sub - ' ============================================================ ' Z1 Cache ' ============================================================ @@ -182,10 +174,6 @@ RefreshError: Err.Raise 1002, "RefreshZ1Cache", "Failed to load Z1 lookup cache: " & Err.Description End Sub -Public Sub ClearZ1Cache() - Set z1Cache = Nothing -End Sub - ' ============================================================ ' Z2 Cache ' ============================================================ @@ -206,10 +194,6 @@ RefreshError: Err.Raise 1002, "RefreshZ2Cache", "Failed to load Z2 lookup cache: " & Err.Description End Sub -Public Sub ClearZ2Cache() - Set z2Cache = Nothing -End Sub - ' ============================================================ ' Z3 Cache ' ============================================================ @@ -230,10 +214,6 @@ RefreshError: Err.Raise 1002, "RefreshZ3Cache", "Failed to load Z3 lookup cache: " & Err.Description End Sub -Public Sub ClearZ3Cache() - Set z3Cache = Nothing -End Sub - ' ============================================================ ' z4Cache ' ============================================================ @@ -252,10 +232,6 @@ RefreshError: Err.Raise 1001, "RefreshZ4Cache", "Failed to load Enum lookup cache: " & Err.Description End Sub -Public Sub ClearZ4Cache() - Set z4Cache = Nothing -End Sub - ' ============================================================ ' O1 Cache ' ============================================================ @@ -308,10 +284,6 @@ NextO1: Next r End Sub -Public Sub ClearO1Cache() - Set o1Cache = Nothing -End Sub - ' ============================================================ ' O2 Cache ' ============================================================ @@ -332,10 +304,6 @@ RefreshError: Err.Raise 1002, "RefreshO2Cache", "Failed to load O2 lookup cache: " & Err.Description End Sub -Public Sub ClearO2Cache() - Set o2Cache = Nothing -End Sub - ' ============================================================ ' tokubetuList ' ============================================================ @@ -354,10 +322,6 @@ RefreshError: Err.Raise 1001, "GetTokubetu", "Failed to load Enum lookup cache: " & Err.Description End Sub -Public Sub ClearTokubetu() - Set tokubetuList = Nothing -End Sub - ' ============================================================ ' oufukuList ' ============================================================ @@ -376,10 +340,6 @@ RefreshError: Err.Raise 1001, "GetOufukuList", "Failed to load Enum lookup cache: " & Err.Description End Sub -Public Sub ClearOufukuList() - Set oufukuList = Nothing -End Sub - ' ============================================================ ' koutaiList ' ============================================================ @@ -398,10 +358,6 @@ RefreshError: Err.Raise 1001, "GetKoutaiList", "Failed to load Enum lookup cache: " & Err.Description End Sub -Public Sub ClearKoutaiList() - Set koutaiList = Nothing -End Sub - ' ============================================================ ' higaitouList ' ============================================================ @@ -420,6 +376,8 @@ RefreshError: Err.Raise 1001, "GetHigaitouList", "Failed to load Enum lookup cache: " & Err.Description End Sub -Public Sub ClearHigaitouList() - Set higaitouList = Nothing +' sheetName : [START_COL, END_COL, ERROR_COL, START_ROW, HEADER_ROW, RefaushCacheName] +Public Sub RefreshDataRangeDict() + Set dataRangeDict = CreateObject("Scripting.Dictionary") + dataRangeDict("M1") = Array("C", "N", "O", 7, 5, "RefreshM1Cache") End Sub \ No newline at end of file diff --git a/src/module/Build_Select.bas b/src/module/Common_Selector.bas similarity index 98% rename from src/module/Build_Select.bas rename to src/module/Common_Selector.bas index 6243b12..7bf0aba 100644 --- a/src/module/Build_Select.bas +++ b/src/module/Common_Selector.bas @@ -1,3 +1,5 @@ +Attribute VB_Name = "Common_Selector" +Option Explicit ' ============================================================ ' Module Name: Build_Select ' Module Desc: Commuter allowance editing sheet (no CSV import) diff --git a/src/module/Validate_Common.bas b/src/module/Validate_Common.bas deleted file mode 100644 index a6b131e..0000000 --- a/src/module/Validate_Common.bas +++ /dev/null @@ -1,10 +0,0 @@ -'============================================================================= -'============================================================================= - -Option Explicit - -'----------------------------------------------------------------------------- -'----------------------------------------------------------------------------- -Public Function IsDateString(ByVal inputStr As String) As Boolean - -End Function \ No newline at end of file diff --git a/src/module/Write_Common.bas b/src/module/Write_Common.bas deleted file mode 100644 index 52ce8c7..0000000 --- a/src/module/Write_Common.bas +++ /dev/null @@ -1,146 +0,0 @@ -' ============================================================ -' Module Name: Write_Common -' Module Desc: CSV write functions -' Module Methods: -' - GetSaveCSVPath -' - WriteCSVFromArray -' ============================================================ - -Function GetSaveCSVPath(Optional ByVal defaultName As String = "") As String - Dim savePath As String - savePath = Application.GetSaveAsFilename( _ - FileFilter:="CSV Files (*.csv), *.csv", _ - Title:="Save CSV", _ - InitialFileName:=defaultName) - - If savePath = "False" Or savePath = "" Then - GetSaveCSVPath = "" - Exit Function - End If - - If InStr(1, savePath, ".csv", vbTextCompare) = 0 Then - savePath = savePath & ".csv" - End If - - GetSaveCSVPath = savePath -End Function - -' Writes a 2D array to a CSV file -Sub WriteCSVFromArray( _ - ByVal filePath As String, _ - ByVal data As Variant, _ - Optional ByVal Charset As String = "shift_jis", _ - Optional ByVal alwaysQuote As Boolean = False _ -) - ' === Input validation === - If Not IsArray(data) Then - Err.Raise 513, , "Input 'data' must be an array." - End If - - Dim numDims As Long - On Error Resume Next - numDims = ArrayDimensions(data) - On Error GoTo 0 - If numDims <> 2 Then - Err.Raise 514, , "Input array must be 2-dimensional." - End If - - Dim rows As Long, cols As Long - rows = UBound(data, 1) - LBound(data, 1) + 1 - cols = UBound(data, 2) - LBound(data, 2) + 1 - - If rows = 0 Or cols = 0 Then Exit Sub ' Empty array, exit early - - ' === Build CSV content === - Dim outputLines As Collection - Set outputLines = New Collection - - Dim i As Long, j As Long - Dim rowStr As String - Dim field As String - Dim needsQuote As Boolean - - For i = LBound(data, 1) To UBound(data, 1) - Dim fields As Variant - ReDim fields(1 To cols) - - For j = LBound(data, 2) To UBound(data, 2) - ' Safely convert variant to string - field = SafeToString(data(i, j)) - - ' Determine if the field needs quoting (per RFC 4180) - needsQuote = alwaysQuote Or (InStr(field, """") > 0) Or _ - (InStr(field, ",") > 0) Or _ - (InStr(field, vbLf) > 0) Or _ - (InStr(field, vbCrLf) > 0) Or _ - (InStr(field, vbCr) > 0) Or _ - (Left(field, 1) = " " Or Right(field, 1) = " ") - - If needsQuote Then - ' Escape double quotes: "" represents a single " - field = """" & Replace(field, """", """""") & """" - End If - - fields(j - LBound(data, 2) + 1) = field - Next j - - rowStr = Join(fields, ",") - outputLines.Add rowStr - Next i - - ' Concatenate all lines - Dim finalContent As String - finalContent = Join(CollectionToArray(outputLines), vbCrLf) - - ' === Write to file === - Dim stream As Object - Set stream = CreateObject("ADODB.Stream") - With stream - .Type = 2 ' adTypeText - .Charset = Charset - .Open - .WriteText finalContent, 0 ' adWriteChar - .SaveToFile filePath, 2 ' adSaveCreateOverWrite - .Close - End With -End Sub - -' Helper function: safely convert any Variant to a string -Private Function SafeToString(ByVal v As Variant) As String - On Error Resume Next - If IsNull(v) Or IsEmpty(v) Then - SafeToString = "" - Else - SafeToString = CStr(v) - End If - On Error GoTo 0 -End Function - -' Helper function: get the number of dimensions of an array (1, 2, ...) -Private Function ArrayDimensions(arr As Variant) As Long - Dim dimCount As Long - On Error GoTo ExitPoint - Do - dimCount = dimCount + 1 - Dim tmp As Long - tmp = UBound(arr, dimCount) - Loop -ExitPoint: - ArrayDimensions = dimCount - 1 -End Function - -' Helper function: convert a Collection to a 1D array (for use with Join) -Private Function CollectionToArray(col As Collection) As Variant - If col.Count = 0 Then - CollectionToArray = Array() - Exit Function - End If - - Dim arr() As String - ReDim arr(1 To col.Count) - Dim i As Long - For i = 1 To col.Count - arr(i) = col(i) - Next i - CollectionToArray = arr -End Function \ No newline at end of file diff --git a/src/thisWorkbook/Tukin_C1.bas b/src/sheet/C1.cls similarity index 96% rename from src/thisWorkbook/Tukin_C1.bas rename to src/sheet/C1.cls index 0c9684b..96a933f 100644 --- a/src/thisWorkbook/Tukin_C1.bas +++ b/src/sheet/C1.cls @@ -66,6 +66,10 @@ Private Function KUKAN_START_DAY_COLS() As Variant KUKAN_START_DAY_COLS = Array(25, 32, 39, 46) ' Y, AF, AM, AT End Function +Private Function DATE_COLS() As Variant + DATE_COLS = Array(4, 5, 6, 25, 32, 39, 46, 54) ' D, E, F, Y, AF, AM, AT, BB +End Function + ' ============================================================ ' Helper: Get index by value, return -1 if not found ' ============================================================ @@ -88,13 +92,16 @@ Private Sub Worksheet_Change(ByVal Target As Range) With Me Set watchArea = Union( _ .Columns("C"), _ + .Columns("D"), _ .Columns("E"), _ + .Columns("F"), _ .Columns("G"), _ .Columns("I"), _ .Columns("S:W"), _ .Columns("Z:AD"), _ .Columns("AG:AK"), _ - .Columns("AN:AR") _ + .Columns("AN:AR"), _ + .Columns("BB") _ ) End With Dim intersectRng As Range: Set intersectRng = Application.Intersect(Target, watchArea) @@ -120,6 +127,17 @@ Private Sub Worksheet_Change(ByVal Target As Range) Next End If + ' === Date columns changes === + idx = GetIdx(Target.Column, DATE_COLS) + If idx >= 0 Then + Dim cellDate As Range + For Each cellDate In Target + If Trim(cellDate.Value) <> "" Then + cellDate.Value = FormatDateInput(cellDate.Value) + End If + Next + End If + ' === Transport column changes (T, AA, AH, AO) === Dim idx As Long idx = GetIdx(Target.Column, KUKAN_TRANSPORT_COLS) @@ -448,7 +466,7 @@ Private Sub ClearRowData(ByVal rowNum As Long) End Sub ' ====== Button Macros ====== -Sub C1_validateButton() +Private Sub validateButton() Dim lastRow As Long, r As Long, errorCount As Long lastRow = GetLastDataRowInRange(Me, START_COL, END_COL) @@ -469,7 +487,7 @@ Sub C1_validateButton() End Sub ' Validation logic -Private Sub Validate(ByVal rowNum As Long) +Private Private Sub validate(ByVal rowNum As Long) Set ws = Me ' Clear background color @@ -490,14 +508,14 @@ Private Sub Validate(ByVal rowNum As Long) Me.Cells(rowNum, ERROR_COL).ClearContents End Sub -Sub C1_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub C1_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(START_COL, END_COL) End Sub -Sub C1_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(START_COL, END_COL) End Sub diff --git a/src/thisWorkbook/Master_M1_Kukan.bas b/src/sheet/M1.cls similarity index 92% rename from src/thisWorkbook/Master_M1_Kukan.bas rename to src/sheet/M1.cls index bd14c7a..18d2d1c 100644 --- a/src/thisWorkbook/Master_M1_Kukan.bas +++ b/src/sheet/M1.cls @@ -1,22 +1,22 @@ ' ============================================================ -' Module Name: Master_M1_Kukan +' Module Name: Master_Kukan ' Module Desc: M1 Kukan master data management (import/export/validate) ' Module Methods: -' - M1_Import -' - M1_Export -' - M1_validateButton_Click -' - M1_SortDataRowsByC -' - M1_ToggleAutoFilter -' - M1_Worksheet_Change -' - M1_ValidateRow -' - M1_FillValidationDropdown -' - M1_ValidateAllRows +' - Import +' - Export +' - validateButton_Click +' - SortData +' - ToggleAutoFilter +' - Worksheet_Change +' - ValidateRow +' - FillValidationDropdown +' - ValidateAllRows ' ============================================================ ' ====== Constants ====== Const START_COL As Long = 3 ' C column Const END_COL As Long = 14 ' N column Const ERROR_COL As Long = 15 ' O column -Const M1_HEADER_ROW As Long = 5 +Const HEADER_ROW As Long = 5 Function HEADERS() As Variant HEADERS = Array("C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N") @@ -85,7 +85,7 @@ Private Sub Worksheet_Change(ByVal Target As Range) End If End Sub -Sub M1_Import() +Sub Import(wsTarget As Worksheet) ' === Step 1: Select CSV file === Dim filePath As String: filePath = SelectCSVFile() If filePath = "" Then Exit Sub @@ -102,7 +102,6 @@ Sub M1_Import() ' === Step 3:Clear all data rows before import === Application.EnableEvents = False - Dim wsTarget As Worksheet: Set wsTarget = Me Call ClearDataRows(wsTarget, START_COL, END_COL, 7) Application.EnableEvents = True @@ -126,8 +125,7 @@ ImportError: MsgBox "CSV import failed: " & Err.Description, vbExclamation End Sub -Sub validate(ByVal rowNum As Long, ByVal lastDataRow As Long) - Set ws = Me +Private Sub validate(ws As Worksheet, ByVal rowNum As Long, ByVal lastDataRow As Long) Dim clearRange As Range Set clearRange = ws.Range(ws.Cells(rowNum, START_COL), ws.Cells(rowNum, END_COL)) @@ -207,9 +205,9 @@ Sub validate(ByVal rowNum As Long, ByVal lastDataRow As Long) End Sub ' Validate button -Sub M1_validateButton() +Sub validateAll(ws As Worksheet) Dim lastDataRow As Long, r As Long, errorCount As Long - lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) + lastDataRow = GetLastDataRowInRange(ws, START_COL, END_COL) If lastDataRow < 7 Then MsgBox "No data found.", vbExclamation @@ -218,7 +216,7 @@ Sub M1_validateButton() For r = 7 To lastDataRow Validate r, lastDataRow - If Trim(Cells(r, ERROR_COL).Value) <> "" Then + If Trim(ws.Cells(r, ERROR_COL).Value) <> "" Then errorCount = errorCount + 1 End If Next r @@ -231,7 +229,7 @@ Sub M1_validateButton() MsgBox "Validation complete. Errors: " & errorCount, vbInformation End Sub -Sub M1_Export() +Private Sub Export() Dim lastDataRow As Long: lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) If lastDataRow < 7 Then MsgBox "No data rows to output.", vbExclamation @@ -263,7 +261,7 @@ Sub M1_Export() ' === Step 4: Build array with header and data === Dim headerArr As Variant Dim colLetters As Variant: colLetters = HEADERS() - headerArr = GetCSVHeader(ws, colLetters, M1_HEADER_ROW) + headerArr = GetCSVHeader(ws, colLetters, HEADER_ROW) Dim outputArr As Variant ReDim outputArr(1 To rowCount + 1, 1 To 12) @@ -294,14 +292,14 @@ ExportError: MsgBox "CSV export failed: " & Err.Description, vbExclamation End Sub -Sub M1_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub M1_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(START_COL, END_COL) End Sub -Sub M1_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(START_COL, END_COL) End Sub \ No newline at end of file diff --git a/src/thisWorkbook/Master_M2_Kukan_detail.bas b/src/sheet/M2.cls similarity index 93% rename from src/thisWorkbook/Master_M2_Kukan_detail.bas rename to src/sheet/M2.cls index d0896c6..a88a5e4 100644 --- a/src/thisWorkbook/Master_M2_Kukan_detail.bas +++ b/src/sheet/M2.cls @@ -1,22 +1,22 @@ ' ============================================================ -' Module Name: Master_M2_Kukan_detail +' Module Name: Master_Kukan_detail ' Module Desc: M2 Kukan detail master data management ' Module Methods: -' - M2_Import -' - M2_Export -' - M2_validateButton_Click -' - M2_SortDataRowsByC -' - M2_ToggleAutoFilter -' - M2_Worksheet_Change -' - M2_ValidateRow -' - M2_FillValidationDropdown -' - M2_ValidateAllRows +' - Import +' - Export +' - validateButton_Click +' - SortData +' - ToggleAutoFilter +' - Worksheet_Change +' - ValidateRow +' - FillValidationDropdown +' - ValidateAllRows ' ============================================================ ' ====== Constants ====== Const START_COL As Long = 3 ' C column Const END_COL As Long = 18 ' R column Const ERROR_COL As Long = 19 ' S column -Const M2_HEADER_ROW As Long = 6 +Const HEADER_ROW As Long = 6 Function HEADERS() As Variant HEADERS = Array("C", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R") @@ -79,7 +79,7 @@ Sub ClearRowData(ByVal ws As Worksheet, ByVal rowNum As Long) ws.Cells(rowNum, 19).ClearContents ' Q column error info End Sub -Sub M2_Import() +Private Sub Import() ' === Step 1: Select CSV file === Dim filePath As String: filePath = SelectCSVFile() If filePath = "" Then Exit Sub @@ -120,7 +120,7 @@ ImportError: MsgBox "CSV import failed: " & Err.Description, vbExclamation End Sub -Sub validate(ByVal rowNum As Long, ByVal lastDataRow As Long) +Private Sub validate(ByVal rowNum As Long, ByVal lastDataRow As Long) Set ws = Me Dim clearRange As Range @@ -171,7 +171,7 @@ Sub validate(ByVal rowNum As Long, ByVal lastDataRow As Long) End Sub ' Button macro (Validate selected row) -Sub M2_validateButton() +Private Sub validateButton() Dim lastDataRow As Long, r As Long, errorCount As Long lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) @@ -190,7 +190,7 @@ Sub M2_validateButton() MsgBox "Validation complete. Errors: " & errorCount, vbInformation End Sub -Sub M2_Export() +Private Sub Export() Dim lastDataRow As Long: lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) If lastDataRow < 7 Then MsgBox "No data rows to output.", vbExclamation @@ -222,7 +222,7 @@ Sub M2_Export() ' === Step 4: Build array with header and data === Dim headerArr As Variant Dim colLetters As Variant: colLetters = HEADERS() - headerArr = GetCSVHeader(ws, colLetters, M2_HEADER_ROW) + headerArr = GetCSVHeader(ws, colLetters, HEADER_ROW) Dim outputArr As Variant ReDim outputArr(1 To rowCount + 1, 1 To 11) @@ -254,14 +254,14 @@ ExportError: End Sub -Sub M2_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub M2_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(START_COL, END_COL) End Sub -Sub M2_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(START_COL, END_COL) End Sub \ No newline at end of file diff --git a/src/thisWorkbook/Master_O1_address.bas b/src/sheet/O1.cls similarity index 86% rename from src/thisWorkbook/Master_O1_address.bas rename to src/sheet/O1.cls index c754d71..8129eca 100644 --- a/src/thisWorkbook/Master_O1_address.bas +++ b/src/sheet/O1.cls @@ -1,13 +1,13 @@ ' ============================================================ -' Module Name: Master_O1_address +' Module Name: Master_address ' Module Desc: O1 address master data management ' Module Methods: -' - O1_Import -' - O1_Export -' - O1_SortDataRowsByC -' - O1_ToggleAutoFilter +' - Import +' - Export +' - SortData +' - ToggleAutoFilter ' ============================================================ -Sub O1_Import() +Private Sub Import() Dim filePath As String Dim lines As Variant Dim i As Long @@ -47,14 +47,14 @@ ErrorHandler: MsgBox "Import fails:" & vbCrLf & Err.Description, vbCritical End Sub -Sub O1_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub O1_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(3, 5) End Sub -Sub O1_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(3, 5) End Sub diff --git a/src/thisWorkbook/Master_O2_507.bas b/src/sheet/O2.cls similarity index 64% rename from src/thisWorkbook/Master_O2_507.bas rename to src/sheet/O2.cls index 8845210..5833022 100644 --- a/src/thisWorkbook/Master_O2_507.bas +++ b/src/sheet/O2.cls @@ -1,25 +1,25 @@ ' ============================================================ -' Module Name: Master_O2_507 +' Module Name: Master_507 ' Module Desc: O2 master data management (507) ' Module Methods: -' - O2_Import -' - O2_Export -' - O2_SortDataRowsByC -' - O2_ToggleAutoFilter +' - Import +' - Export +' - SortData +' - ToggleAutoFilter ' ============================================================ ' ====== (507) ======= -Sub O2_Import() +Private Sub Import() Call Generic_Master_Import(Me, 13) End Sub -Sub O2_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub O2_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(3, 15) End Sub -Sub O2_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(3, 15) End Sub diff --git a/src/thisWorkbook/Master_Z1_222.bas b/src/sheet/Z1.cls similarity index 94% rename from src/thisWorkbook/Master_Z1_222.bas rename to src/sheet/Z1.cls index e0bc4ff..f867988 100644 --- a/src/thisWorkbook/Master_Z1_222.bas +++ b/src/sheet/Z1.cls @@ -1,11 +1,11 @@ ' ============================================================ -' Module Name: Master_Z1_222 +' Module Name: Master_222 ' Module Desc: Z1 master data management (222) ' Module Methods: -' - Z1_Import -' - Z1_Export -' - Z1_SortDataRowsByC -' - Z1_ToggleAutoFilter +' - Import +' - Export +' - SortData +' - ToggleAutoFilter ' ============================================================ ' ====== (222) ======= @@ -15,11 +15,11 @@ Const END_COL As Long = 9 Const ERROR_COL As Long = 2 ' ====== Function ====== -Sub Z1_Import() +Private Sub Import() Call Generic_Master_Import(Me, 7) End Sub -Sub Z1_Export() +Private Sub Export() Dim lastDataRow As Long: lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) If lastDataRow < 7 Then @@ -43,7 +43,7 @@ Sub Z1_Export() Call Generic_Master_Export(Me, 7, lastDataRow) End Sub -Sub Validate(ByVal rowNum As Long) +Private Sub validate(ByVal rowNum As Long) Set ws = Me Dim cValue As String: cValue = Trim(ws.Cells(rowNum, 3).Value) @@ -143,7 +143,7 @@ Sub Validate(ByVal rowNum As Long) ws.Cells(rowNum, 2).ClearContents End Sub -Sub Z1_validateButton() +Private Sub validateButton() Dim lastDataRow As Long, r As Long, errorCount As Long lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) @@ -168,14 +168,14 @@ Sub Z1_validateButton() MsgBox "Validation complete. Errors: " & errorCount, vbInformation End Sub -Sub Z1_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub Z1_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(2, END_COL) End Sub -Sub Z1_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(2, END_COL) End Sub \ No newline at end of file diff --git a/src/thisWorkbook/Master_Z2_223.bas b/src/sheet/Z2.cls similarity index 94% rename from src/thisWorkbook/Master_Z2_223.bas rename to src/sheet/Z2.cls index e9c8951..dbe220d 100644 --- a/src/thisWorkbook/Master_Z2_223.bas +++ b/src/sheet/Z2.cls @@ -1,11 +1,11 @@ ' ============================================================ -' Module Name: Master_Z2_223 +' Module Name: Master_223 ' Module Desc: Z2 master data management (223) ' Module Methods: -' - Z2_Import -' - Z2_Export -' - Z2_SortDataRowsByC -' - Z2_ToggleAutoFilter +' - Import +' - Export +' - SortData +' - ToggleAutoFilter ' ============================================================ ' ====== (223) ======= @@ -15,11 +15,11 @@ Const END_COL As Long = 7 Const ERROR_COL As Long = 2 ' ====== Function ====== -Sub Z2_Import() +Private Sub Import() Call Generic_Master_Import(Me, 5) End Sub -Sub Z2_Export() +Private Sub Export() Dim lastDataRow As Long: lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) If lastDataRow < 7 Then @@ -43,7 +43,7 @@ Sub Z2_Export() Call Generic_Master_Export(Me, 5, lastDataRow) End Sub -Sub Validate(ByVal rowNum As Long) +Private Sub validate(ByVal rowNum As Long) Set ws = Me Dim cValue As String: cValue = Trim(ws.Cells(rowNum, 3).Value) @@ -127,7 +127,7 @@ Sub Validate(ByVal rowNum As Long) ws.Cells(rowNum, 2).ClearContents End Sub -Sub Z2_validateButton() +Private Sub validateButton() Dim lastDataRow As Long, r As Long, errorCount As Long lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) @@ -152,14 +152,14 @@ Sub Z2_validateButton() MsgBox "Validation complete. Errors: " & errorCount, vbInformation End Sub -Sub Z2_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub Z2_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(2, END_COL) End Sub -Sub Z2_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(2, END_COL) End Sub \ No newline at end of file diff --git a/src/thisWorkbook/Master_Z3_224.bas b/src/sheet/Z3.cls similarity index 96% rename from src/thisWorkbook/Master_Z3_224.bas rename to src/sheet/Z3.cls index 74612b8..2b3cc31 100644 --- a/src/thisWorkbook/Master_Z3_224.bas +++ b/src/sheet/Z3.cls @@ -15,11 +15,11 @@ Const END_COL As Long = 8 Const ERROR_COL As Long = 2 ' ====== Function ====== -Sub Z3_Import() +Private Sub Import() Call Generic_Master_Import(Me, 6) End Sub -Sub Z3_Export() +Private Sub Export() Dim lastDataRow As Long: lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) If lastDataRow < 7 Then @@ -43,7 +43,7 @@ Sub Z3_Export() Call Generic_Master_Export(Me, 6, lastDataRow) End Sub -Sub Validate(ByVal rowNum As Long) +Private Sub validate(ByVal rowNum As Long) Set ws = Me Dim cValue As String: cValue = Trim(ws.Cells(rowNum, 3).Value) @@ -135,7 +135,7 @@ Sub Validate(ByVal rowNum As Long) ws.Cells(rowNum, 2).ClearContents End Sub -Sub Z3_validateButton() +Private Sub validateButton() Dim lastDataRow As Long, r As Long, errorCount As Long lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) @@ -160,14 +160,14 @@ Sub Z3_validateButton() MsgBox "Validation complete. Errors: " & errorCount, vbInformation End Sub -Sub Z3_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub Z3_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(2, END_COL) End Sub -Sub Z3_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(2, END_COL) End Sub \ No newline at end of file diff --git a/src/thisWorkbook/Master_Z4_220.bas b/src/sheet/Z4.cls similarity index 96% rename from src/thisWorkbook/Master_Z4_220.bas rename to src/sheet/Z4.cls index 094f621..cc04163 100644 --- a/src/thisWorkbook/Master_Z4_220.bas +++ b/src/sheet/Z4.cls @@ -15,11 +15,11 @@ Const END_COL As Long = 9 Const ERROR_COL As Long = 2 ' ====== Function ====== -Sub Z4_Import() +Private Sub Import() Call Generic_Master_Import(Me, 7) End Sub -Sub Z4_Export() +Private Sub Export() Dim lastDataRow As Long: lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) If lastDataRow < 7 Then @@ -43,7 +43,7 @@ Sub Z4_Export() Call Generic_Master_Export(Me, 7, lastDataRow) End Sub -Sub Validate(ByVal rowNum As Long) +Private Sub validate(ByVal rowNum As Long) Set ws = Me Dim cValue As String: cValue = Trim(ws.Cells(rowNum, 3).Value) @@ -135,7 +135,7 @@ Sub Validate(ByVal rowNum As Long) ws.Cells(rowNum, 2).ClearContents End Sub -Sub Z4_validateButton() +Private Sub validateButton() Dim lastDataRow As Long, r As Long, errorCount As Long lastDataRow = GetLastDataRowInRange(Me, START_COL, END_COL) @@ -160,14 +160,14 @@ Sub Z4_validateButton() MsgBox "Validation complete. Errors: " & errorCount, vbInformation End Sub -Sub Z4_SortDataRowsByC() +Private Sub Do_Sort() Call SortDataRows(3) End Sub -Sub Z4_ToggleAutoFilter() +Private Sub Do_Filter() Call ToggleAutoFilter(2, END_COL) End Sub -Sub Z4_AutoFitColumnWidth() +Private Sub Do_Fit() Call AutoFitColumnWidth(2, END_COL) End Sub \ No newline at end of file diff --git a/test.xlsm b/test.xlsm new file mode 100644 index 0000000000000000000000000000000000000000..ef73ca45b686542595196b6f1d630103935775ea GIT binary patch literal 16144 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 Vun#Bxg9Ql(F#3ptIL<#>{|^!xN0|Ts literal 0 HcmV?d00001 diff --git a/test.xlsx b/test.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..cd387d87f1e10726414a2c369cb30a7cb5319483 GIT binary patch literal 6599 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 y_*#{k{g2LL*o+gj4>y`kV@%H`l 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�n;4*CgY&?TNM*?p{+lCiST$SeH#b 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 XAPs^gWH>l+*k3%Xrz`3pz)JrMVoN2n delta 352270 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μ_wxGZ;l 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