Почему Excel не может обрабатывать 2 файла с тем же именем? [закрытый]

это беспокоит меня всю мою ИТ-жизнь - я работал с 7 различными версиями Excel более 20 лет, с большими изменениями в каждой версии, заставляя меня искать, где старые функции скрыты в новой версии, но одна вещь остается твердой, как камень: инвалидность, чтобы открыть два файла с тем же именем.

извините, Excel не может открыть две книги с одинаковым именем одновременно.

Так что я очень жду понять, почему это все еще так в Excel 2013, который даже не был необходим для реализации в Excel 95? Есть ли какая-либо техническая или проектная причина в структурах данных Excel или внутренних обработках, что она не может обрабатывать два файловых объекта с разными путями, но с одинаковым именем файла? Я не хочу, чтобы Microsoft била здесь, я просто хочу понять причину этого.

3 ответов


Microsoft say здесь это связано с неоднозначностью расчета со связанными ячейками.

Если бы у вас была ячейка = ' [Book1.xlsx]Sheet1'!$ G $ 33 и у вас было две книги под названием "Book1" открыт, нет никакого способа сказать, какой из них вы имеете в виду.

этот способ ссылки на связанные книги по имени в ячейках сохраняется во всех версиях, и я очень сомневаюсь, что он изменится.


для всех людей, которые оказались здесь, потому что они хотели бы открыть два файла Excel с тем же именем в то же время:

хотя сам Excel не позволяет сделать это из-за (Конечно, сомнительных) обстоятельств, указанных Болдриком в ответ, по крайней мере, существуют обходные пути, которые позволяют открывать несколько файлов xls/xlsx с тем же именем одновременно в отдельных экземплярах/процессах Excel.

обходные пути описаны в эта тема на форумах How-To Geek.

существует даже своего рода" встроенное " исправление с помощью настройки Ignore other applications that use Dynamic Data Exchange (DDE), который работает для меня, но и приводит к ошибкам при закрытии Excel и затем пытается снова открыть файл, дважды щелкнув по нему.

мне пришлось пойти на исправление реестра, которое отлично работает. ПРИМЕЧАНИЕ, ХОТЯ что это обходное решение, после его применения, предотвратит перекрестные ссылки на ячейки между всеми открытыми таблицами Excel (также с разные имена), поскольку отдельные экземпляры Excel не знают друг о друге (по крайней мере, в соответствии с тестами, которые я только что сделал).

вместо этого вы можете выбрать исправление, которое добавляет новый пункт контекстного меню Open Separate в Проводник и используйте его, только если вы действительно хотите открыть два файла с одинаковым именем одновременно.



ДА, ВЫ МОЖЕТЕ!!! (Но я думаю, что это ошибка Excel)


попробуйте это:

  1. на рабочем столе щелкните правой кнопкой мыши и выберите "Создать" = > " Microsoft Excel рабочий лист."
  2. переименуйте файл в " Test[1].xlsx " (название важно!)
  3. Теперь создайте папку now на рабочем столе и вставьте копию файла "Test[1].xlsx " в него
  4. открыть оба " тест[1].xlsx " двойным щелчком мыши:Et вуаля!

теперь две (одноименные) книги открыты в Excel. Но если вы посмотрите туда " Workbook.Name "- свойства, это становится еще более странным, потому что внутренне они оба переименованы в " Test(1).XLSX-файл".

это потому, что Excel действительно нуждается в специальных символах "[] " внутренне для своих формул.

таким образом, они (обычно) не разрешены для имени книги, но книга с именем "Test[1].xlsx " внешне может быть открыт в любом случае, что такое ошибка для меня!

почему? Потому что вы действительно попадаете в неприятности как программист, Если хотите обратиться к обеим этим книгам с помощью "приложения".Workbooks[name]", который не терпит неудачу, но всегда доставляет первый, найденный под этим именем!

Йорг