|
|
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#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. Через раз ловлю ошибку "Метод Paste из класса Worksheet" завершён неверно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2019, 21:09 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9, боец, вам замечание. Не стоит портить буфер обмена, никогда. Чтобы перенести RANGE из одного листа в другой, используйте переменную типа Variant. То есть, вместо Код: pascal 1. 2. 3. 4. - делай так: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. И т.д. А насчет ошибки - смотри на фактическую стурктуру (исходного) региона и данные в нем. Отсюда не видно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2019, 23:00 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Вроде работает, спасибо! Только забыли ".Value" в конце написать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 00:17 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 03:25 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9а продолжают висеть в процессах. Попробуй поменять порядок уничтожения. Как-то странно уничтожать лист после приложения... Либо вообще оставить только приложение. Оно остается висеть, когда при работе с ним были какие-то проблемы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 07:58 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9Файлы сохраняются, всё ок. Но при каждом создании нового файла, они не закрываются, а продолжают висеть в процессах. Код: 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. Включи Visible - возможно, увидишь причину. Например, диалог, запрашивающий разрешение на перезапись существующего файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 10:41 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Товарищ прапорщикMiracle9Файлы сохраняются, всё ок. Но при каждом создании нового файла, они не закрываются, а продолжают висеть в процессах. Код: 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. Включи Visible - возможно, увидишь причину. Например, диалог, запрашивающий разрешение на перезапись существующего файла. Вариант... Код: pascal 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 11:18 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Делал Код: pascal 1. Окно открывается и тут же закрывается, вроде всё ОК. При закрытии приложения процессы ексель тут же уничтожаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:10 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9При закрытии приложения процессы ексель тут же уничтожаются. Значит не зануляешь какую-то переменную со ссылкой неужели глобальных переменных насоздавал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:20 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Arioch, первым делом об этом подумал и т.к. я вроде всё занулил решил спросить тут вот весь код, глобальных переменных нет Код: 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. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:24 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9 Код: pascal 1. Выкинь на хрен. Делай всё в одном приложении. Excel ВСЕГДА умел открывать несколько книг одновременно (лишь бы название файла книги было разным). В этом у тебя и ошибка, в том что и как ты делаешь с ExApp2 - выкинь её нафиг! Miracle9 Код: pascal 1. А какие у тебя гарантии, что оно [1] ? а если там уже было ? TExcelApplication например умеет присасываться у уже открытому Excel. Ты же сам ниже делаешь без "волшебных констант" Код: sql 1. Хотя даже этого не нужно! https://docs.microsoft.com/en-us/office/vba/api/excel.workbooks.add https://docs.microsoft.com/en-us/office/vba/api/excel.workbooks.open Лучше заведи переменную для Workbook. Ах да, у тебя же переменные без типов. Тогда ещё проще. Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:30 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9 Код: pascal 1. а вот в первом коде этой строки не было однако! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:30 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9 Код: pascal 1. Окно открывается и тут же закрывается, вроде всё ОК. а ExlApp1 ? ------- могу ещё вариант предложить, делай всё в отдельном потоке, только не забудь COM инициализировать в начале и де-ницилизировать в конце. С большой вероятностью де-нициализация COM appartment и есть то, что у тебя убивает какой-то из Exceleq в конце работы программы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:32 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9 Код: pascal 1. для базовой работы c XLSX вообще Excle не нужен :-) Во всяком случае для записи и из Delphi. Чтение доделывать лень было. Если там конечно хитрое оформление, форматы условные, ещё какаие-нибудь навороты... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:36 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Miracle9 Код: pascal 1. 2. 3. 4. 5. 6. 7. ух, сколько у тебя строк с двумя точками! Избавься от них, разбей их каждую на две простых строки. с большой вероятностью ты в КАЖДОЙ этой строке создаёшь для результата промежуточную невидимую безымянную переменную, которая только в самом конце процедры наконец уничтожается. а она указывает на exApp2 между прочим! От которого надо избавиться, да. простой тест, следи за количеством запущенных Excel.exe и за их Process ID и трассируй программу построчно! в первом цикле все будет нормально. вангую, во втором цикле ты запустишь 3-й эксель! вангую, во втором цикле после одной из строк Код: pascal 1. 2. закроется 2-й Excel (хотя сама ExlApp2 указывает уже на третий) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:44 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. Как ты думаешь ,есть в этой процедуре переменная типа Variant или нет ? Когда она очистится и "отпустит" Excel, до минутной паузы или после ? Включи Use Debug DCUs, открой Debug Windows -> CPU И внимательно протрассируй кусок процедуры после Sleep но перед end ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:47 |
|
||
|
Разбить excel файл на несколько файлов
|
|||
|---|---|---|---|
|
#18+
Arioch, сделал пока через книги, всё ок работает. "для базовой работы c XLSX вообще Excle не нужен :-) Во всяком случае для записи и из Delphi." не знал "с большой вероятностью ты в КАЖДОЙ этой строке создаёшь для результата промежуточную невидимую безымянную переменную" А в интернете на форуме в ответах так часто делали, строки разбивали. ок, чуть позже сделаю, проверю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2019, 12:53 |
|
||
|
|

start [/forum/topic.php?fid=58&tid=2039694]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
182ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 512ms |

| 0 / 0 |
