diff --git a/vba_code_kukan_detail_master.txt b/vba_code_kukan_detail_master.txt index a4c5258..488892a 100644 --- a/vba_code_kukan_detail_master.txt +++ b/vba_code_kukan_detail_master.txt @@ -176,22 +176,13 @@ Sub ImportMasterDetailData() If UBound(lines) >= 0 And Trim(lines(0)) <> "" Then Dim csvHeader As String csvHeader = Trim(lines(0)) - ' Validate header by comparing each field - Dim expectedHeaders As Variant - expectedHeaders = Split(CSV_HEADER, ",") + ' Validate column count + Dim expectedCount As Long + expectedCount = UBound(Split(CSV_HEADER, ",")) + 1 Dim headerFields As Variant headerFields = Split(csvHeader, ",") - Dim headerMismatch As Boolean - headerMismatch = False - Dim k As Long - For k = 0 To UBound(expectedHeaders) - If k > UBound(headerFields) Or Trim(headerFields(k)) <> Trim(expectedHeaders(k)) Then - headerMismatch = True - Exit For - End If - Next k - If headerMismatch Or UBound(headerFields) <> UBound(expectedHeaders) Then - MsgBox "CSV header mismatch.", vbExclamation + If UBound(headerFields) + 1 <> expectedCount Then + MsgBox "CSV column count mismatch. Expected: " & expectedCount & ", Got: " & UBound(headerFields) + 1, vbExclamation Exit Sub End If End If