Excelノート 01-02 起動・終了・開く・閉じる

HOME  検索  索引  もくじ  関数目次  前ページへ  次ページへ

タイトル欄のアドレスは、エクセルファンクラブの該当する頁へのリンク先です。
詳しい事は、こちらの
お願いをご覧になってください。

21  ファイルが使用中かどうか確認するには?
22  読取専用でファイルと開くには?
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40

21 ファイルが使用中かどうか確認するには?
http://www.ae.wakwak.com/~efc21/cgi-bin/wwwlng.cgi?print+200210/02100486.txt
 「だれかが特定のファイルを開いているかどうかを調べるには?」 【VBAラウンジ】
このコードは、C:\Documents and Settings\Administrator\My Documents 内の Book1.xls を開くコードです。
Book1.xlsが以下の状態で開けない場合、それぞれメッセージを表示します。
  既に開いている場合
  指定のフォルダにファイルが存在しない場合
  パスが不正の場合
  ネットワークの共有で、他のユーザーが現在開いている場合

Sub ファイルを開く()
 Dim WB As Workbook
 Dim genpon_F As String, copy_F As String
 genpon_F = "Book1.xls"
 copy_F = ThisWorkbook.Name
 'ファイルが開いているかどうかをチェック
 For Each WB In Workbooks
  If WB.Name = genpon_F Then
   WB.Activate
   MsgBox "ファイルは既に開いています"
   Exit Sub
  End If
 Next
 If ActiveWorkbook.Name <> genpon_F Then
  '他の人が原本ファイルを開かれているか確認
  Dim Mine As String, sfnm As String
  sfnm = "C:\Documents and Settings\Administrator\My Documents\" & genpon_F
  On Error GoTo ErStp
  Mine = Dir(sfnm)
  If Mine = "" Then
   MsgBox "指定のフォルダにファイルが存在しません。ファイル名等を確認してください。"
  Else
   Open sfnm For Binary Access Read Lock Read As #1: Close #1 'Err検知?
  End If
 End If
 'ファイルを開く
 If ActiveWorkbook.Name <> genpon_F Then Workbooks.Open Filename:=sfnm
 Exit Sub
ErStp:
 If Err.Number = 52 Then
  MsgBox "パスが不正です"
 ElseIf Err.Number = 70 Then
  MsgBox "他の人が日報情報ファイルを使っています。" & _
  Chr(10) & "閉じてもらってから実行してください。"
 End If
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。

Sub Test2()
 '開かれているか確認
 Dim Mine As String, sfnm As String
 sfnm = ThisWorkbook.Path & "\Book1.xls"    
'サーチファイル
 On Error GoTo ErStp
 Mine = Dir(sfnm)
 If Mine = "" Then
  MsgBox "Not Found"
 Else
  Open sfnm For Binary Access Read Lock Read As #1: Close #1
'Err検知?
  MsgBox "閉じ中"
 End If
 Exit Sub
ErStp:
 If Err.Number = 52 Then MsgBox "パスが不正です"
 If Err.Number = 70 Then MsgBox "使用中"
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
22 読取専用でファイルと開くには?
http://www.ae.wakwak.com/~efc21/cgi-bin/wwwlng.cgi?print+200204/02040567.txt
 「保存したファイルの一覧(履歴?)を作成、次回からは素早く開くことができるマクロ」
Sub 読取専用でファイルを開く()
 Workbooks.Open Filename:= _
 "C:\Documents and Settings\Administrator\デスクトップ\Book1.xls", ReadOnly:=True
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
23  
 
24  
 
25  
 
26  
 
27  
 
28     
 
29  
 
30  
 
31  
 
32  
 
33  
 
34  
 
35  
 
36  
 
37  
 
38     
 
39  
 
40  
 

HOME  検索  索引  もくじ  関数目次  前ページへ  次ページへ

このページのTOPへ

inserted by FC2 system