Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница:

 

  Вопрос: Мгновенная закраска из vb больших регионов Excel-я Добавлено: 30.10.07 13:36  

Автор вопроса:  Tur | ICQ: 201446364 
Есть простой способ выбрасывание больших объемов данных из vb в Excel. Например такая функция
Sub ShowObraz(R1() As Byte, C1() As Byte, C2() As Byte)
Dim i As Long, n As Long: n = 8192
ReDim Obraz(1 To n + 1, 1 To 3)
Obraz1(1, 1) = "R1": Obraz1(1, 2) = "C1": Obraz1(1, 3) = "C2":
For i = 1 To n
    Obraz1(i + 1, 1) = R1(i)
    Obraz1(i + 1, 2) = C1(i)
    Obraz1(i + 1, 3) = C2(i)
Next
Set xlApp = New Excel.Application: xlApp.Workbooks.Add: Application.WindowState = xlNormal
xlApp.Range("A1:С" + CStr(n + 1)) = Obraz: xlApp.Visible = True
End Sub

Ключевая здесь последняя строчка кода. Выделяется регион и в точности его размерам в него вкладывается массив Obraz. В этом коде важно то что он работает быстро, т.е. т.о. большие массивы данных отпечатываются в Excel-e мгновенно.
Теперь вопрос. Мне надо закрасить одним цветом различные не прямоугольные области листа в Excel-e. Этих областей много, они разбросаны по всему листу, по всем столбцам и по всем строкам. Как сделать нечто подобное приведенной выше процедуре чтобы сначала заполнить в vb некий массив и затем просто его шлепнуть в Excel без потерь времени. Ведь иначе, если выделять в Excel-e каждый раз небольшой участок строки и закрашивать его, а потом переходить к следующему участку - это занимает уйму времени.

Ответить

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

Нет ответов

Страница:

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



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