Добавление html-файлов в VBA - PullRequest
0 голосов
/ 24 июня 2009

У меня есть отчет Excel с кучей листов, каждый с таблицей данных. Мне нужно сделать кнопку, которая будет создавать одну HTML-страницу, содержащую таблицы, одну за другой.

Я мало что знаю о html, поэтому мой первый подход состоял в том, чтобы создать макрос, который создает другой лист с таблицами на нем, а затем сохраняет этот лист как html с помощью ActiveWorkbook.PublishObjects. Проблема в том, что я не хочу, чтобы ширина столбцов была одинаковой для всех таблиц в экспортируемом файле.

Я думаю, что решение состоит в том, чтобы установить ширину столбцов на каждом листе и экспортировать листы в HTML отдельно, а затем добавить их все в один HTML-файл. Есть ли какой-нибудь простой способ сделать это, или мне нужно написать код, чтобы войти в каждый HTML-файл и выбрать соответствующие разделы?

1 Ответ

2 голосов
/ 25 июня 2009

В июньском выпуске VBPJ за 2001 год я написал колонку, которая, вероятно, послужит хорошей отправной точкой для вас. Он показал, как перебирать Range, преобразовывая его в таблицу HTML, которая затем помещалась в буфер обмена для вставки во что-то другое (например, FrontPage). Статья:

Спросите VB Pro, июнь 2001 г .: Суп-офис VBA

В частности, взгляните на вторую пару вопросов и ответов, а в листинге 2 показана функция RangeToHtml (). Мой код в основном убирает все форматирование - это была цель для меня. Я не знаю достаточно об объектной модели Excel, чтобы сказать наверняка, но я думаю, что вы могли бы встраивать width = атрибуты в, если это важно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...