Step32 一覧に未登録ならば追加します: Excel請求書

前回一覧シートに請求書No.を検索しましたが、見つからない場合は請求書シートから追加します。

手順は一覧シートに日付が入力されている最終行を探します。次に請求書シートの先頭行から最終行まで、品名コードか金額が入力されていれば一覧シートに追加していきます。金額のみ入力されている場合でも追加するのは値引き等があるかもしれないからです。


Homeに戻る > Excelでアプリケーションソフト3 > 請求書アプリ

作成画面

■請求書一覧シート

請求書データ追加前の一覧シートです。
追加前の一覧シート

■一覧シートに請求書No.が未登録の場合

前回作成したMyFindNumber部分にMySaveDataを追加してください。

        If MyFindNumber(Worksheets("請求書").Range("x6")) = 0 Then
            MySaveData
        End If

■請求書データを一覧に追加する

ln = Worksheets("一覧").Range("B1048576").End(xlUp).Row + 1
でB列に入力されている最終行を探しています。追加はその下の行からなので+1しています。

For lrow = 24 To 41 で請求書明細の開始行から最終行までループします。

If Worksheets("請求書").Cells(lrow, 2) <> "" Or Worksheets("請求書").Cells(lrow, 23) <> "" Then
これで日付か金額の入力チェックをしています。入力があれば追加します。

Private Sub MySaveData()
    Dim ln As Long
    Dim lrow As Long
    Dim lco As Long
    
    lco = 0
    ln = Worksheets("一覧").Range("B1048576").End(xlUp).Row + 1
        
    For lrow = 24 To 41
        If Worksheets("請求書").Cells(lrow, 2) <> "" Or Worksheets("請求書").Cells(lrow, 23) <> "" Then
            
            Worksheets("一覧").Cells(ln + lco, 2) = Worksheets("請求書").Range("U8")    '日付
            Worksheets("一覧").Cells(ln + lco, 3) = Worksheets("請求書").Range("X6")    '請求書No.
            
            Worksheets("一覧").Cells(ln + lco, 4) = Worksheets("請求書").Cells(lrow, 4) '品名コード
            Worksheets("一覧").Cells(ln + lco, 5) = Worksheets("請求書").Cells(lrow, 4) '品番
            Worksheets("一覧").Cells(ln + lco, 6) = Worksheets("請求書").Cells(lrow, 9) '品名
            Worksheets("一覧").Cells(ln + lco, 7) = Worksheets("請求書").Cells(lrow, 15) '数量
            Worksheets("一覧").Cells(ln + lco, 8) = Worksheets("請求書").Cells(lrow, 17) '単位
            Worksheets("一覧").Cells(ln + lco, 9) = Worksheets("請求書").Cells(lrow, 19) '単価
            Worksheets("一覧").Cells(ln + lco, 10) = Worksheets("請求書").Cells(lrow, 23) '金額
            lco = lco + 1
        End If
    Next
        
End Sub

■追加した一覧シート

追加した一覧シート

[関連リンク]

入力されている最終位置、先頭位置の取得
IF関数 条件を判定し処理を行う

Homeに戻る > Excelでアプリケーションソフト3 > 請求書アプリ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved