Excelで表を使った顧客管理ソフトを作ってみよう

Step 10 抽出結果を印刷

抽出ユーザーフォームに「結果を印刷」ボタンを追加しています。

抽出結果の印刷は下記の流れで行っています。
1) 抽出されているかチェックします。
  されていなければメッセージを表示し終了します。
2)抽出結果のデータがあるかどうかチェックします。
  なければメッセージを表示し終了します。
3)下記の印刷設定を行います。
  左余白、右余白、上余白、下余白、ヘッダーマージン、フッターマージン、用紙サイズ、用紙方向
  ヘッダータイトル文字「顧客一覧(抽出結果)」、ヘッダーに日付、フッターにページ数、カラー印刷
  拡大/縮小率を85%
4)最終行を取得
5)印刷範囲を選択
6)画面を更新
7)印刷プレビュー


Homeへ > Excelでアプリケーションソフト2 > 顧客管理ソフトを作ってみよう

シートのVBAコード

Private Sub CommandButton5_Click()
    Dim filarea As Object
    Dim ln As Long
    
    If ActiveSheet.AutoFilterMode = False Then
        MsgBox "抽出されていません。"
        Exit Sub
    End If
    
    Set filarea = Worksheets("顧客一覧").Range("A4").CurrentRegion
    ln = filarea.Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count - 1
    If ln = 0 Then
        MsgBox "印刷するデータがありません。"
        Exit Sub
    End If
    
    With Sheets("顧客一覧").PageSetup
            .LeftMargin = 15
            .RightMargin = 15
            .HeaderMargin = 37
            .TopMargin = 70
            .FooterMargin = 37
            .BottomMargin = 70
            .PaperSize = xlPaperA4
            .Orientation = xlLandscape
            .CenterHeader = "&24顧客一覧(抽出結果)"
            .RightHeader = "&D"
            .RightFooter = "&P/&N"
            .BlackAndWhite = False
            .Zoom = 85
    End With
    
    ln = Sheets("顧客一覧").Range("A65536").End(xlUp).Row
    Range(Cells(4, 1), Cells(ln, 12)).Select
    Application.ScreenUpdating = True
    Selection.PrintPreview
End Sub

抽出画面

■抽出実行画面
「部署名」から「販売」で抽出しています。
会社名から株式で抽出

■印刷プレビュー画面
A4横で印刷されます。
ヘッダーに日付、フッターにページ/総ページを印刷するようにしています。
顧客一覧 印刷プレビュー

Homeへ > Excelでアプリケーションソフト2 > 顧客管理ソフトを作ってみよう

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


Copyright (c) Excel-Excel ! All rights reserved