如何防止 Excel 默认锁定文件?

And*_*yle 22 windows-explorer read-only microsoft-excel

当我双击网络共享上的 CSV 文件时,该文件会在 Microsoft Excel 中打开(这正是我想要的)。但是,Excel 假定我要修改该文件,其他所有人也是如此,因此对其进行了锁定。

在实践中我非常实际上很少要修改这些文件,只是从他们读。如果我在后台的 Excel 窗口中打开文件,它会阻止其他人打开同一个文件。

我知道我可以从 Excel 中的“文件”->“打开”对话框以只读方式手动打开文件。但是,我几乎总是通过在资源管理器(或 Outlook,用于附件)中双击文件来打开文件。是否可以更改文件关联,以便 CSV 文件的默认处理程序为“Excel 处于只读模式”?是否有可以在“打开方式...”对话框中使用的命令行参数来实现此目的?

或者更坦率地说 - 当我在 Windows 资源管理器中查看 CSV 文件时,是否有比自己启动 Excel 更简单的只读方式打开它,选择文件 - > 打开,从下拉列表中选择“只读”,手动导航到层次结构中的同一文件夹,然后打开文件?

(我很高兴在我想修改和保存文件的极少数情况下不得不跳过箍。)

And*_*yle 15

通过将以下键添加到我的注册表中,我能够得出令人满意的结论:

[HKEY_CLASSES_ROOT\Excel.CSV\shell\Open_in_read_only_Excel]
@="Open read-only in Excel"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\Open_in_read_only_Excel\command]
@="\"C:\\Program Files (x86)\\Microsoft Office\\Office12\\EXCEL.EXE\" /r \"%1\""
Run Code Online (Sandbox Code Playgroud)

它们会在 Windows 资源管理器的右键单击外壳菜单上创建一个名为“在 Excel 中以只读方式打开”的条目。选中后,这将启动带有/r标志的Excel (根据第二个键中的命令),以只读模式打开文件。

这并不完美 - 我宁愿这是CSV 文件的默认操作,并且需要上下文选项以读写模式启动。然而,这比之前的情况有了很大的改善。

  • 你快到了 - 现在将该操作设置为默认值,将键`[HKEY_CLASSES_ROOT\Excel.CSV\shell`,值`(默认)`设置为**Open_in_read_only_Excel** (5认同)

EM0*_*EM0 5

以下是Andrzej Doyle对 Excel 2013 的回答,它使用 DDE,并将“打开(只读)”设置为默认操作:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Excel.CSV\shell]
@="OpenReadOnly"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\OpenReadOnly]
@="Open (read-only)"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\OpenReadOnly\command]
@="\"C:\\Program Files\\Microsoft Office 15\\Root\\Office15\\EXCEL.EXE\" /dde"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\OpenReadOnly\ddeexec]
@="[open(\"%1\" /ou \"%u\",,1)]"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\OpenReadOnly\ddeexec\topic]
@="system"
Run Code Online (Sandbox Code Playgroud)

(是的,正是它,,1使文件成为只读的。多么晦涩!)