diff --git a/vba_code_kotsu_master.txt b/vba_code_kotsu_master.txt index b299526..1750480 100644 --- a/vba_code_kotsu_master.txt +++ b/vba_code_kotsu_master.txt @@ -1,51 +1,6 @@ ' CSV Header Constants Const CSV_HEADER As String = "利用区間コード,券種,コード,名称,1箇月運賃/販売額,定期額/券1(額)/利用額,定期支給期間/券1(枚)/特別料金,特別料金/券2(額),券2(枚),端数(額),特別料金" -Private Sub Worksheet_Change(ByVal Target As Range) - ' === Fill D, E when C column changes === - If Target.Column = 3 And Target.Row >= 7 Then - Dim cell As Range - For Each cell In Target - If Trim(cell.Value) = "" Then - Call ClearRowData(Me, cell.Row) - Else - Call FillFromKukanMaster(Me, cell.Row) - End If - Next - End If -End Sub - -Sub FillFromKukanMaster(ByVal ws As Worksheet, ByVal rowNum As Long, Optional ByVal setG As Boolean = True) - Dim wsKukan As Worksheet - Dim lastRow As Long - Dim i As Long - Dim code As String - - On Error Resume Next - Set wsKukan = ThisWorkbook.Worksheets("Z1") - If wsKukan Is Nothing Then Exit Sub - On Error GoTo 0 - code = Trim(ws.Cells(rowNum, 3).Value) - If code = "" Then Exit Sub - lastRow = wsKukan.Cells(wsKukan.Rows.Count, 3).End(xlUp).Row - - For i = 7 To lastRow - If Trim(wsKukan.Cells(i, 3).Value) = code Then - ws.Cells(rowNum, 4).Value = Trim(wsKukan.Cells(i, 4).Value) & ": " & Trim(wsKukan.Cells(i, 5).Value) - ws.Cells(rowNum, 5).Value = Trim(wsKukan.Cells(i, 6).Value) - ws.Cells(rowNum, 6).Value = Trim(wsKukan.Cells(i, 7).Value) - ws.Cells(rowNum, 7).Value = Trim(wsKukan.Cells(i, 9).Value) - ws.Cells(rowNum, 8).Value = Trim(wsKukan.Cells(i, 14).Value) - If setG Then - ws.Cells(rowNum, 7).Value = "1" - End If - Exit Sub - End If - Next - - Call ClearRowData(ws, rowNum) -End Sub - Sub ClearRowData(ByVal ws As Worksheet, ByVal rowNum As Long) ' Clear from D column onwards