У меня есть файл шаблона Excel, в который я заполняю данные из коннектора OLEDB для SQL Server.Файл содержит несколько сводных таблиц, которые ссылаются на набор данных, заполняемый базой данных.
В настоящее время я выбираю все строки в листе, используя диапазон «Данные! $ A: $ K».Это приводит к проблеме с пустыми значениями, отображаемыми в сводной таблице.
Я хотел создать именованную таблицу над набором данных и ссылаться на нее в сводных таблицах (плюс я получаю некоторые другие преимущества, которые дают именатаблицы приносят).
Количество строк, естественно, не установлено, поэтому я хотел найти способ установить область именованного диапазона только на фактические значения.
Я использую Excel Interop и C # для этого и не могу найти способ изменить диапазон.Я получил только до:
oRng = oSheet.get_Range("Transactions");
, который выбирает названный диапазон.Но как мне изменить, какие ячейки принадлежат ему?
Или, возможно, есть лучшее решение, которое я должен искать?
РЕДАКТИРОВАТЬ
Динамические диапазоныответ!
Я решил это благодаря @TimWilliams. Ответ:
"Используйте динамический диапазон в вашем шаблоне: http://ozgrid.com/Excel/DynamicRanges.htm"
Мне кажется, что динамические диапазоны лучше описаныздесь: http://www.contextures.com/xlpivot01.html
Я обнаружил небольшую проблему, заключающуюся в том, что я не мог использовать диапазон в сводной таблице, потому что он требовал, чтобы ему было нужно как минимум 2 строки для работы - файл шаблона имеет только заголовки столбцов. Я добавилслучайная строка в 1-й ячейке 2-й строки и сводная таблица приняли это.
После этого мне пришлось удалить эту строку, используя код c #.
Спасибо, ребята, за помощь.