15

Когда я дважды щелкаю по CSV-файлу на сетевом ресурсе, он открывается в Microsoft Excel (что я и хочу). Тем не менее, Excel предполагает, что я собираюсь изменить файл, и что все остальные тоже, и поэтому устанавливает его.

На практике я очень редко хочу изменить эти файлы, просто прочитав их. И если у меня есть файл, открытый в окне Excel на заднем плане, он останавливает кого-либо еще от открытия того же файла.

Мне известно, что я могу вручную открыть файл только для чтения из диалогового окна Файл -> Открыть в Excel. Однако я почти всегда открываю файлы, дважды щелкая по ним в Проводнике (или Outlook, для вложений). Можно ли изменить сопоставление файлов так, чтобы обработчиком по умолчанию для файлов CSV был «Excel в режиме только для чтения»? Есть ли аргумент командной строки, который я могу использовать в диалоге Открыть с помощью ... для достижения этой цели?

Или более грубо - когда я смотрю на CSV-файл в Windows Explorer, есть ли более простой способ открыть его только для чтения, чем сам запуск Excel, выбрав "Файл" -> "Открыть", выбрав "только для чтения" в раскрывающемся списке, перемещаясь вручную в ту же папку в иерархии, а затем открыть файл?

(Я рад, что мне приходится прыгать через обручи в тех редких случаях, когда я хочу изменить и сохранить файл.)

4 ответа4

10

Я смог прийти к удовлетворительному выводу, добавив следующие ключи в мой реестр:

[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\""

Это создает запись в контекстном меню оболочки в проводнике Windows, которая называется «Открыть только для чтения в Excel». При выборе этого запускается Excel с флагом /r (согласно команде во втором ключе), который открывает файл в режиме только для чтения.

Это не идеально - я бы предпочел, чтобы это было действие по умолчанию для файла CSV, и что для запуска в режиме чтения-записи требовалась опция контекста. Однако это значительно улучшило ситуацию.

3

Если у вас есть контроль над тем, как файл сохраняется, вы можете сохранить его с помощью опции, которая запрашивает доступ только для чтения при каждом открытии.

Файл> Сохранить как> Инструменты> Общие параметры ...> Рекомендуется только для чтения

3

Существует легкая программа от самих Microsoft, которая называется Microsoft Excel Viewer. (просто Google) Это не блокирует файлы при просмотре. Его можно установить, даже если присутствует полноразмерный Microsoft Excel.

К сожалению, я еще не нашел, как настроить окна для использования «Viewer» в качестве приложения по умолчанию для Excel (если только я не удаляю полноразмерный Excel). Если бы я мог сделать это, у всех нас было бы очень аккуратное решение. Так кто-нибудь знает, как это сделать?

3

Вот эквивалент ответа Анджея Дойла для 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"

(Да, « ,,1 делает файл доступным только для чтения. Как малоизвестно!)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .