Workbook について

Workbooksオブジェクトを形成するWorkbookオブジェクトについて記載していきます
Workbooksオブジェクトではファイルのオープン、全てのファイルを閉じることができました
Workbookオブジェクトでは、ファイルの保存、コピー、削除、クローズなどができるのです

■Workbookオブジェクト

・構文

構文は以下の通り、Workbooksオブジェクトのコレクションメンバーです

広告

Excel.Workbooks(Index)

Workbookオブジェクトにはイベントが定義されていますが、これは追々ということで・・
メソッドやプロパティもかなりの量なので、重要そうなものだけを掲載していきます

Index … 1から始まり[Workbooks.Count]までの数字が指定できます

・メソッド

オブジェクトのメソッドは以下の通りです

  • Activate … アクティブにする
  • Breaklink … リンクを削除
  • ChangeLink … リンクを変更
  • Close … ファイルを閉じる
  • DeleteNumberFormat … ユーザー定義の表示形式を削除
  • EnableConnections … データ接続を有効化
  • ExportAsFixedFormat … PDF または XPS 形式で保存
  • LinkInfo … リンク情報を取得
  • LinkSources … 全てのリンクを配列で取得
  • OpenLinks … リンクの参照元文書を開く
  • RemoveDocumentInformation … ファイル情報の削除
  • Save … ファイルを保存
  • SaveAs … ファイルを別名で保存
  • SaveCopyAs … ファイルのコピーを保存
  • UpdateFromFile … ファイルを更新
  • UpdateLink … リンクを更新
  • etc…

サーバーファイルや校閲、共有、保護、印刷、XMLについてのメソッドは除外しました
できれば、リンク関連も除外しときたかったんですが、載せるだけで説明はしませんw

・プロパティ

オブジェクトのプロパティは以下の通りです

  • ActiveChart … アクティブなグラフ
  • ActiveSheet … アクティブなシート
  • ActiveSlicer … アクティブなスライサー
  • Application … オブジェクトを作成したApplicationオブジェクト
  • AutoSaveOn … 自動保存
  • ChartDataPointTrack … 全グラフで実際のデータ要素を追跡
  • Charts … 全グラフシートのコレクション
  • CodeName … オブジェクトのコード名
  • Colors … パレットの色
  • Connections … データソース間の接続更新
  • Container … オブジェクトのコンテナー
  • DefaultPivotTableStyle … ピボットテーブルの既定のスタイル
  • DefaultSlicerStyle … スライサーの既定のスタイル
  • DefaultTableStyle … 既定の表のスタイル
  • DisplayDrawingObjects … 図形の表示方法
  • DisplayInkComments … 注釈をブックに表示するかどうか
  • FileFormat … ファイル形式または種類
  • ForceFullCalculation … 強制的な計算モードかどうか
  • FullName … パスを含めたオブジェクトの名前
  • IconSets … セルアイコンでデータにフィルターを適用する
  • InactiveListBorderVisible … 非アクティブなリストの罫線を表示するかどうか
  • Name … オブジェクトの名前
  • Names … 名前定義のコレクション
  • Parent … 親オブジェクト
  • Path … 完全なパス
  • PivotTables … ピボットテーブルのコレクション
  • Queries … GetとTransformのクエリ
  • ReadOnly … 読み取り専用かどうか
  • ReadOnlyRecommended … 読み取り専用を推奨する設定かどうか
  • RemoveDocumentInformation … 個人情報を削除
  • SaveLinkValues … 外部リンクの値を保存
  • Sheets … シートのコレクション
  • ShowPivotTableFieldList … ピボットテーブルフィールドリストを表示できるかどうか
  • Styles … スタイルのコレクション
  • TableStyles … 表スタイルのコレクション
  • Theme … テーマ
  • UpdateLinks … リンク更新の設定
  • UpdateRemoteReferences … リモート参照の更新設定
  • VBProject … Visual Basic プロジェクト
  • WebOptions … web ページとしての属性のコレクション
  • Windows … ウィンドウのコレクション
  • Worksheets … Worksheetのコレクション
  • etc…

サーバーファイルや校閲、共有、保護、変換、回復、互換、ドキュメント情報、XMLについてのメソッドは除外しました
リンク関連は載せるだけです

■例

広告

・簡単なサンプル

Sub Sample()
    Dim wb      As Workbook
    Dim ws      As Worksheet
    
	' Workbookを取得する
    Set wb = Me.Application.ActiveWorkbook
    
    ' 各種プロパティを表示
    Debug.Print wb.CodeName     ' 「ThisWorkbook」
    Debug.Print wb.FileFormat   ' 「52」?
    Debug.Print wb.FullName     ' 「C:\Book2.xlsm」	これはフルパス
    Debug.Print wb.Name         ' 「Book2.xlsm」		これはファイル名のみ
    Debug.Print wb.Path         ' 「C:\」				これはフォルダ名のみ
    Debug.Print wb.ReadOnly     ' 「False」
    Debug.Print wb.Sheets.Count ' 「1」
    
    For Each ws In wb.Sheets
        Debug.Print ws.Name     ' 「Sheet1」
    Next
        
    Debug.Print wb.Styles.Count         ' 「47」
    Debug.Print wb.TableStyles.Count    ' 「170」
    Debug.Print wb.Windows.Count        ' 「1」
    Debug.Print wb.Worksheets.Count     ' 「1」
    
	' 保存する
    Call wb.Save
    ' 閉じる
    Call wb.Close
    
    Set wb = Nothing

End Sub

・説明

ActiveWorkbookでWorkbookを取得して、よく使うであろうプロパティを表示しています
Saveメソッドで、単一ファイルの保存を行って、Closeメソッドで単一ファイルを閉じています

・注意点

  1. WorkbooksオブジェクトのCloseメソッドは全てのファイルを閉じる
  2. WorkbookオブジェクトのCloseメソッドは単一ファイルを閉じる
  3. Excel.Application.ActiveWorkbookプロパティはマクロ登録したボタン押下直後に取得すること!

・その他

フルパスやファイル名、フォルダ名は取れるけど、拡張子や拡張子なしのファイル名(サンプルでいうところの「Book2」)だけとかは取れないんですねー

Workbooksオブジェクトに、OpenメソッドやCloseメソッドがあって、Workbookオブジェクトには、Saveメソッドがあるので、ファイル単位で行うことは、Workbookオブジェクトにあるかと思ったんですが、ファイルのコピーや削除はないんですね!

ではでは

広告

やもす ʕ•͡-•ʔ

のんびり!のほほん!がモットーです!w 蕎麦食いたい ライブ行きたい 暑いの嫌い

シェアする