Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Переменные в Excel


Автор: informatik 17.12.2007, 16:27
Кто знает? Есть ли возможность в документе Excel ячейкам присваивать какие-нибудь переменные, а потом при создании документа (на основе существующего документа Excel) задавать этим переменным значения.

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

Автор: Azzdorf 17.12.2007, 19:09
поясни более вопрос или приведи пример та не совсем понятно

просто для вставки в шаблон используеш Range = WorkSheet.get_Range(var1, var2); да и всё или тебе что-то поконкретнее нуно?????

Автор: informatik 17.12.2007, 21:12
Есть документ Excel, в котором заполнены некоторые ячейки. Другие ячейки заполняются псоле формирования данного документа в программе. 
При формировании я указываю ячейку или диапазон ячеек в который вставляю данные.

Ну и теперь если изменить документ (тот который в качестве шаблона), например если добавить столбец или строку, то придется заменять  и код программы, т.к. индексы ячеек поменяются.

А нужно чтобы в документе ячейки были что то типа переменных, и независимо от их положения в документе можно было вставлять в них данные.
Ну вроде старался объяснить как мог...........

Автор: Azzdorf 18.12.2007, 00:43
informatik ну єто уже хоть попонятнее, вижу по сути три решения:

1) написать модуль программы, который содержал бы конструктор отчётов - вещь - потом сможеш до конца жизни использовать (сложно и долго, но хватит на долго);

2) маркировать ячейки в которые собираешся носить данные: опять же пригодиться самый минимальный и простой конструктор (до ужаса простой) и второе - это опять же таки зависит от специфики деятельности: так вставить данные в отдельную ячейку - это одно, а липить диапазоны другое (как на меня оптимальный вариант для тебя) и да чуть незабыл ячейки в шаблонах прийдется маркировать - я бы предложил коментарии, а для определения ячейки для внесения данных задавать поиск по коментарию (Range.Find + LookIn.XlComments), а для вставки диапазона - углы или начальный (верхний левый) угол;

3) и третий вариант - подождать может кто-то еще че-то подскажить (мож есть какой-то спец классик - ато я только это нарыл)...


Опять же пиши - больше, подумаем больше.... smile 

Автор: informatik 18.12.2007, 15:34
Ну спасиба за идеи Azzdorf!. 

Со второй сразу попробую поэксперементровать...

На счет модуля очень интересно, мне как раз потом такой понадобится в еще одном приложении, только вот времени его написать нету..... 

А еще не подскажешь.. Как работает как это можно реализовать в WORD. 

Тут смысл в том что есть какой-нибудь документ (например "Договор"), а в нем Покупатель - является переменной, и при создании документа в приложении передается Фамиля и т.д. покупателя, и соответственно отображается в документе на месте Покупателя.....вот так....

Автор: Azzdorf 18.12.2007, 20:33
всегда пожайлуста informatik

модуль и сам всё собираюсь написать, мне тут братик свой показівал, но не смотря на работу в пределах Coding Standarts for .NET понять немогу ничего (не тот уровень), к тому же хочется самому написать - будет пополезнее в плане развития

а с WORD ты уж извени - вообще не работал (пока не приходилось) к тому же (ОДНА ТЕМА -> ОДИН ТОПИК smile )...

удачки.... smile 

Автор: thomas 18.12.2007, 21:39
informatik, 
Приветствую.
Посмотри http://wladm.narod.ru/C_Sharp/componentbegin.html
И еще есть большая статья http://www.gotdotnet.ru/LearnDotNet/NETFramework/22054.aspx
Возможно пригодиться.  smile 

Автор: informatik 19.12.2007, 20:01
Спасиба thomas!

Очень подробный ресурс......

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)