yoozhik, Пытливый, спасибо, но получаем весь столбец.
Johny, к сожалению Ваш вариант совершенно не подходит.
Суть в том, что происходит импорт из стороннего приложения, получая коллекцию объектов с полями. При этом импортировать нужно только выбранные столбцы, какие и в каком порядке определяет пользователь. И этот порядок может отличаться от порядка в исходных данных. Видимо придётся оставить свой костыль. Похожий на тот который предложил Пытливый.
А именно примерно так:
Естественно with находится в цикле обработки столбцов импортируемого объекта
Всем спасибо!
Johny, к сожалению Ваш вариант совершенно не подходит.
Суть в том, что происходит импорт из стороннего приложения, получая коллекцию объектов с полями. При этом импортировать нужно только выбранные столбцы, какие и в каком порядке определяет пользователь. И этот порядок может отличаться от порядка в исходных данных. Видимо придётся оставить свой костыль. Похожий на тот который предложил Пытливый.
А именно примерно так:
Код |
---|
Dim sht As Worksheet Set sht = ActiveSheet Dim lst As ListObject Set lst = sht.ListObjects.Add lst.Name = "table" Dim cols cols = Array("Date", "Who", "SendTo", "Subject", "Body") For Each cc In cols lst.ListColumns.Add.Name = cc Next lst.ListColumns(1).Delete With lst.ListRows.Add lst.ListColumns("Date").DataBodyRange(RowIndex:=.Index) = Now End With |
Естественно with находится в цикле обработки столбцов импортируемого объекта
Всем спасибо!