#336 | エクスポートしたファイルを読み取り専用にする | VBA | |
テーブルやクエリのエクスポートは一般的なTransferTextメソッドを使った方法ですが、そのあと、FileSystemObjectオブジェクトを使うことによって、エクスポートした先のファイル属性を変更します。 次のサンプルコードでは、まず"mtbl商品マスタ"テーブルを"c:\商品マスタ.txt"というテキストファイルにエクスポートします。続いてそのファイルオブジェクトを、FileSystemObjectオブジェクトのGetFileメソッドによって取得します。それをFileオブジェクトに代入し、そのAttributesプロパティの値を設定変更します。なお、Attributesプロパティの変更においては、現時点の属性に「読み取り専用(定数 readonly)」を加える形で設定します。ここでの「+」は足し算という意味合いではなく、属性をビット加算する意味合いとなります。 Dim fso As New FileSystemObject Dim ffile As File Dim strFilePath As String 'エクスポート先ファイル名を設定 strFilePath = "c:\商品マスタ.txt" 'エクスポートを実行 DoCmd.TransferText acExportDelim, , "mtbl商品マスタ", strFilePath, True 'そのファイルに読み取り専用属性を追加 Set ffile = fso.GetFile(strFilePath) ffile.Attributes = ffile.Attributes + readonly |
|||
|
Copyright © T'sWare All rights reserved |
※FileSystemObjectオブジェクトを使ったプログラミングにおいては、「CreateObjectメソッド」を使った方法もあります(Access Tips #96〜参照)。