Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: HELP! Виснет процесс Excel Добавлено: 10.02.05 00:32  

Автор вопроса:  Phoenix | ICQ: 233871569 
Пишу прогу для записи в Excel данных из текстовых файлов. Вот ее "проблемная" часть:

 
    Dim xl As Excel.Application
    Dim strListName As String
    Set xl = CreateObject("Excel.Application")
      xl.SheetsInNewWorkbook = 1 'Количествр листов 1
      xl.Workbooks.Add
      xl.Visible = False
      strListName = xl.ActiveWorkbook.Sheets(1).Name 'Получаю текущее имя листа
      xl.ActiveWorkbook.Worksheets(strListName).Select
      xl.ActiveWorkbook.Worksheets(strListName).Name = ExcelMake.FormType 'Новое имя листа

' Далее идет код записи данных в ячейки Excel

      xl.ActiveWorkbook.SaveAs ExcelMake.FileName 'Сохраняю книгу
      xl.ActiveWorkbook.Close
     xl.ActiveWindow.Close
     xl.Quit
  Set xl = Nothing


Если записываю в Excel примерно 500-600 строк, процесс завершается. Если же строк больше, Excel остается висеть в процессах. Размер такого файла xls примерно 1 Mb.
В чем проблема и как ее решить???
Заранее всем спасибо!

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 Phoenix



ICQ: 233871569 

Вопросов: 3
Ответов: 4
 Профиль | | #1 Добавлено: 10.02.05 00:41
И еще. Excel виснет только, если запускать прогу под Win'98. Под NT/2000/XP - все нормально

Ответить

Номер ответа: 2
Автор ответа:
 Phoenix



ICQ: 233871569 

Вопросов: 3
Ответов: 4
 Профиль | | #2 Добавлено: 12.02.05 18:59
Никто не знает?

Ответить

Номер ответа: 3
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #3 Добавлено: 14.02.05 13:59
Возможно,проблема в том,что ты обращаешься к листу по имени.. (Но я не уверен) Попробуй обратиться через индекс.
xl.ActiveWorkbook.Worksheets(0).Select

И еще.. Исключи из кода все обрачения типа ActiveWorkbook,ActiveWorksheet.. Эти ссылки хорошо работают только в самой книге в VBA из обычного кода частенько глючат. Сам так не раз накалывался. Для доступа к книгам и ластам используй коллекции.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам