2014-01-28 3 views
0

Есть ли способ для моего приложения создать документ, который будет сохранен и распечатан без использования какого-либо внешнего программного обеспечения? В настоящее время у меня есть электронная таблица, которая выполняет кучу вычислений, а затем кнопку, которая запускает некоторые VBA для экспорта двух листов в PDF, а затем сохраняет и печатает. Я хочу портировать эту таблицу в .NET-приложение.Создать документы без зависимости от программ Office?

У меня есть опыт со всем. ЗА ИСКЛЮЧЕНИЕМ этого: как мне заново создать эти 2 документа, которые в настоящее время находятся в Excel, без необходимости использовать Excel? Моя цель здесь - выйти из Excel ... потому что я ее ненавижу, и я бы хотел отправить это приложение клиентам по всей стране. Я действительно не хочу говорить клиентам, что им нужен Excel, чтобы использовать это. Я мог бы просто оставить его в электронной таблице, если это так.

Прошу прощения, если это своего рода «nooby», но я не уверен, что это лучший способ действий здесь. Должен ли я попытаться имитировать мои листы Excel на 2 скрытых формах и сохранить/распечатать их? Должен ли я писать HTML-код для создания этих форм в браузере и сохранять/печатать оттуда? Есть ли другие варианты здесь? Я, вероятно, в конечном итоге сохраню как XPS, если найду способ выйти из Excel. Если бы у вас были какие-то идеи, вам понравились бы некоторые указатели. Всем спасибо!

Редактировать: немного больше информации ... Мне не нужна помощь при расчетах или экспорт PDF. Мне не нужна помощь в отношении Excel или VBA. В книге есть 1 входной лист, в который пользователи вводят данные. Результаты расчетов отображаются на двух других листах этой книги. Эти 2 листа в настоящее время экспортируются в 1 PDF с использованием VBA, который затем сохраняется и печатается с использованием VBA. Эти электронные таблицы не являются «электронными таблицами», как вы, возможно, думаете. Они на самом деле являются «формами», из-за отсутствия лучшего термина, которые пользователь никогда не будет редактировать после запуска макроса, чтобы экспортировать их в формате PDF. Они содержат текст, изображения, фигуры и т. Д. Excel - это только средний, который в настоящее время используется для создания этих документов. Моя цель - построить этот проект в .NET и вывести нас из Excel, но я не совсем уверен, как воспроизвести эти 2 формы в моем приложении, не используя Office. Думайте о них как о шаблонах. После того, как пользователь вводит данные в моем приложении, он выполнит некоторые вычисления, и результаты должны появиться на двух формах, которые необходимо распечатать и сохранить на машине пользователя. Как я могу воссоздать эти 2 формы в .NET?

Я., vb.net, WinForms (хотя я мог бы использовать WPF, как я еще не началась), 4,0 рамки :)

+0

У вас возникли проблемы с воссозданием? экспорт в PDF, расчеты, отображение на экране? Ваш вопрос не очень ясен, на каком этапе вы застряли. –

ответ

1

Вот что вы можете сделать:

  1. Добавить файл пустой Excel в свои ресурсы и использовать его в качестве шаблона

  2. Когда ваша программа для сохранения данных, вы можете взять файл из ресурсов и сохранить его на жесткий диск.

  3. Подключиться к файлу Excel с помощью "Microsoft.Ace.oleDb."

  4. Сохранение и чтение данных в Excel так же, как это была таблица db - в сети много примеров. Google для этого.

Для этого проекта вам не нужно приложение Excel на машине.

Теперь, если ваша проблема связана с Excel, вам не нужно беспокоиться. Например, ваши клиенты могут использовать OpenOffice. Или вы можете сохранить данные в формате CSV. CSV не Excel. Вы можете создать свой собственный текстовый формат, и ваши клиенты смогут прочитать его с помощью Блокнота. Вы можете комбинировать HTML/XML и загружать вашу html-страницу на любой xml, который вы поставляете.

Серьезно создайте таблицу и сообщите своим клиентам, что они могут открыть ее с помощью своего любимого редактора электронных таблиц.

+0

Я знаю о OLEDB/ADO.NET, использовал его много раз. Но моя проблема действительно не касается Excel. Я пытаюсь сделать приложение Excel независимым. Я не хочу или не нуждаюсь в электронной таблице. Этот проект НАСТОЯТЕЛЬНО построен в книге Excel. Я хочу перенести все это на .NET, но я не уверен, как начать настройку «шаблонов», скажем, я могу отправить результаты своих вычислений, а затем распечатать и сохранить на машине пользователя. В настоящее время Excel - это всего лишь среда для пользователей, чтобы вводить данные и создавать эти 2 довольно перспективных выходных листа. – TypeM1smatch

+0

Теперь становится понятнее, а также ясно, что ваш вопрос слишком широк. Потому что есть много способов сделать то, что вы делаете. Сначала вам нужно решить, что вы хотите, чтобы ваши пользователи вводили и читали данные. Исходя из этого, вы можете решить, как вы собираетесь доставлять формат. Расчеты с .net просты. –

+0

Я не думаю, что вы понимаете, о чем я прошу. Создание формы для пользователей для ввода данных - это cinch. Расчеты - это cinch. Я не спрашиваю ни об одном из них. После того, как пользователи ввели данные и были сделаны расчеты, мне нужно распечатать и сохранить 2 шаблона, содержащие результаты вычислений. Я хочу сделать это, не используя Office или Adobe. Я не хочу, чтобы пользователям приходилось устанавливать другую программу для просмотра файлов, которые сохраняет мое приложение. – TypeM1smatch

0

Таким образом, вместо того, чтобы использовать программу третьей стороны или что-нибудь фантазии, вы могли бы просто читать в файле excel или xsl и выплюнуть его? Просто напишите код, чтобы правильно отформатировать данные для пользователей ... Существует аналогичный вопрос, который может помочь вам с учебником - Here Но это для Java, вы используете C# или vb? .Net 4.5? бритва?

0

Вы можете создать PDF-код из кода с помощью таких инструментов, как iTextSharp. Или используйте заполняемые PDF-шаблоны и используйте iTextsharp для заполнения формы. Вам понадобится программа для печати PDF, я использую Foxit Reader. Я уверен, что есть некоторые полнофункциональные инструменты PDF, которые включают печать.

Вы также можете делать печать с VB.Net, но я думаю, что смешанные медиа-документы будут сложными.

Смежные вопросы