|
Excel 2007 - Конфликт имен
|
|||
---|---|---|---|
#18+
big-duke, Да, это не помогает. Что на ПК с 2007, что на ПК с 2016 офисом. Вот пример проблемного xlsx-файла, при открытии которого из ole automation будет появляться левое окно: https://yadi.sk/d/UHuuU9At3DrpGg Вызов экселя: Код: pascal 1. 2. 3.
В workbook.xml из эксель-файла это строчки вида: Код: xml 1.
А вот так выглядит это окно: ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2017, 16:08 |
|
Excel 2007 - Конфликт имен
|
|||
---|---|---|---|
#18+
Причем проблемный файл сохранен в том же самом 2016 офисе (т.е. ошибки в именах он оставляет и никак о них не сообщает ни при сохранении, ни при открытии). Только excel automation эти ошибки замечает, чем и вызывает большие проблемы -- процесс открытия файла "зависает" до тех пор, пока пользователь не введет новое имя в этом окне (самих окошек может быть несколько). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2017, 16:13 |
|
Excel 2007 - Конфликт имен
|
|||
---|---|---|---|
#18+
Так и не нашел решений средствами экселя. Поэтому сделал через патч, как советовали выше. Вот пример кода (с некоторым мусор, но тем ни менее, может пригодится кому -- не забываем потом временные файлы удалять). Разница в том, что тут используются стандартные компоненты для делфи (а не зим-мастер как выше): код распакови во временный файл, изменения и запаковки обратно Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2017, 14:28 |
|
Excel 2007 - Конфликт имен
|
|||
---|---|---|---|
#18+
Просто введите такое же новое имя, только добавьте в новом в конце, например 1. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 14:47 |
|
Excel 2007 - Конфликт имен
|
|||
---|---|---|---|
#18+
Trikon, спасибо, помогло! Вот вариант под C++Builder: *.h Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
*.cpp Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
Вызов в коде открытия Excel файла: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2017, 15:21 |
|
|
start [/forum/topic.php?fid=61&msg=39434203&tid=2172716]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
415ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 326ms |
total: | 832ms |
0 / 0 |