18 シートの Excel ファイルがあり、他のバージョンで開く必要があることを知りたいです。
たとえば、ファイルを右クリックして、開いているオフィスで開くを選択すると、同じものが開かれています。これをロックしたい。
18 シートの Excel ファイルがあり、他のバージョンで開く必要があることを知りたいです。
たとえば、ファイルを右クリックして、開いているオフィスで開くを選択すると、同じものが開かれています。これをロックしたい。
ありえない。どのプログラムを呼び出すかは、ユーザーまたは OS が決定します。
最善の方法は、正しいプログラムを使用しない限り、データが読み取られないように難読化することです。
それは厳密には正しくありません。Workbook_Open
どのバージョンの Excel が使用されているかをチェックするイベント (つまり)に関連付けられたマクロを作成できますApplication.Version
。たとえば、次のようなことを試すことができます。
Private Sub Workbook_Open()
If Int(Application.Version) <> 11 Then
Workbook.Saved = True
Workbook.Close
End If
End Sub
ただし、ユーザーがマクロを無効にしている場合、これは機能しません。OpenOffice でも機能するかどうかはわかりません。OpenOffice に VBA に相当するものがあることは知っていますが、Excel マクロが OpenOffice でまったく同じように動作するかどうかを判断するには、オブジェクト モデルについて十分に知りません。
ワークブックをパスワードで保護し、使用されているバージョンを確認するマクロを含めるのが最善の方法だと思います。誰にでもできるアプローチではありませんが、おそらく最も近い方法です。