Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.05.27;
Скачать: CL | DM;

Вниз

Запись данных в Excel. Как найти заданную пользователем ячейку?   Найти похожие ветки 

 
Vidi   (2010-12-30 15:55) [0]

Друзья, вопрос в следующем: нужен какой-то аналог Закладок из MS Word или что-то в этом духе.
Задача: по определенным пользователями полям экспортировать данные в Excel.
Пример: пользователь делает шаблон и в нужной ему ячейке пишет что-то типа <здесь будет цена> и т.п.
Т.е. я заранее не знаю, где эта ячейка будет размещена.
В ворде есть замечательная вещь: Закладки, к которым можно обратиться по имени. В Excel я такой штуки не нашел.
Как быть?


 
Медвежонок ХМЛ ©   (2010-12-30 16:31) [1]

а в йокселе есть именованные диапазоны. а в диапазоне может быть конкретная ячейка.


 
Ехель   (2010-12-30 16:52) [2]

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

Кроме того, в одной ячейке может быть несколько "чего-то типа <здесь будет цена>".

Простое решение - выбрать какой-то свой тег, со специфической сигнатурой, а затем по сигнатуре искать теги и заменять. Например, #(Price)#, где #( и )# - начальные и конечные сигнатуры, а Price - тег. Искать теги удобно родным поиском Excel по маске.

А именованные диапазоны хороши для посекционного формирования отчетов: заголовок, строки в цикле, подпись.


 
Медвежонок ХМЛ ©   (2010-12-30 16:57) [3]

что значит не отображаются?
в левом верхнем комбобоксе их полный список.
и при выборе в комбо диапазон фокусируется.


 
Ехель   (2011-01-02 13:38) [4]

что значит не отображаются?

"Нигде толком не отображается" значит, что глядя на экран монитора,  ты не видишь расположение всех именованных диапазонов явно и одновременно. Не WYSIWYG, то есть.

в левом верхнем комбобоксе их полный список.

Такой список "особенно удобен" при сотне-другой именованных диапазонов. Смотришь, значит, на документ, и, желая найти ячейку с общей суммой по счету, телепатируешь, и решаешь, что называется эта ячейка никак не иначе, как TotalAmount... или AmountTotal?... кхм... TotalSum?... SumTotal?... Total?... Sum?... йо!... какой *** назвал ее SummaItogo?!... хех... так это же я сам. :о(
И так с каждой ячейкой...

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

#(TotalAmount)# #(Currency)# (#(AmountInWords)#) _________#(ManagerName)#

То есть, при применении именованных диапазонов, такие конструкции придется жестко прописывать в коде программы:

Range.FormulaR1C1 := TotalAmount + " " + Currency + " (" + AmountInWords) + ") _____________ " + ManagerName;

и при выборе в комбо диапазон фокусируется

Я не знаю, что ты имеешь в виду под "фокусируется", а как по мне, так диапазон в таком случае просто выделяется обычной рамочкой выделения. Шаг вправо, шаг влево - и ты уже потерял выделение. Не помнишь, где оно только что было?

Кроме того, попробуй создать именованный диапазон "234", только не плачь, хорошо?


 
Сергей М. ©   (2011-01-03 22:01) [5]


> так это же я сам


Ну так если ты укурился когда именовал диапазоны, то какие к нам-то претензии ?)



Страницы: 1 вся ветка

Текущий архив: 2012.05.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.009 c
15-1326966363
palva
2012-01-19 13:46
2012.05.27
Современный Оруэлл


15-1327085063
Artem
2012-01-20 22:44
2012.05.27
Правильная компиляция при наличии только коротких переходов...


2-1327400950
Григорий
2012-01-24 14:29
2012.05.27
помогите разобраться с кодом


4-1257275310
mihail
2009-11-03 22:08
2012.05.27
Как на прямую обращаться к байтам файлового носителя?


2-1327043868
Chuck Bass
2012-01-20 11:17
2012.05.27
Указать позицию для записи таблицы БД