![]() |
простой скрипт для Экселя
нужен скрипт, который:
будет проходить по таблице, смотреть колонку с датой и, если она достаточно устарела, копировать определенное поле текущей строки в отдельный файл. То есть по сути будет делать список того, что нужно обновить. Здесь как-то можно обойтись встроенным средствами экселя или нужно что-то стороннее? Если нельзя и при этом всё должно работать на любой машине(то есть, например, PHP и C# нельзя использовать), то остается только C++ с какими-то библиотеками или есть еще варианты? Спасибо. |
Зачем С++? Встроенный VBA прекрасно справится!
|
О, спасибо, то что нужно
|
А такой вопрос в тему, а можно ли VBA как-нибудь "заточить" такой вариант сортировки, как в Vista, по цвету ячейки, тоесть, если есть таблица, с ячейками разного цвета, в которых находится разные суммы счетов, то Office 2007 позволяет делать сортировку по цвету, это удобно поскольку если для России будет цвет белый, для Белоруссии - синий, для Украины - красный, так легко искать счета для какой то одной страны, сортировка по странам это не то, поскольку сортировка по цвету расширяемая, ею можно тоньше настроить саму сортировку и т.д., но в Office 2003 такой функции нет, я тут задумался, и прикинул, а нельзя ли написать скрипт или макрос выполняющий сиё?! Правда нужно отметить, что макросы я умею писать самые что ни на есть примивные, до ужаса, проще сказать, не умею... иной раз мне кажется, что можно это сделать, иной раз, я сомневаюсь... Может кто-нибудь написать такую "штуку"?! Или подсказать, что что-нибудь по этому вопросу, в каком направлении рыть?!
P.S. Не на всех компах идёт Office 2007, а многие в силу его внешнего вида "запутаности", поскольку нужно изучать почти заново, где и что, не жалуют этот продукт своим вниманием... Буду признателен... |
Drongo, конечно, можно написать такую "штуку". На VBA вообще очень много чего можно, если скорость не сильно критична.
Думаю, так (на примере одной колонки): 1. Определить кол-во ячеек, подлежащих сортировке. 2. Создать массив с двумя столбами: содержимое ячейки и ее цвет. 3. Отсортировать этот массив по цвету. 4. Засунуть содержимое массива обратно в ячейки, начиная с первой, не забывая раскрасить в нужный цвет. Или так: Написать функцию, которая определяет цвет ячейки. Код:
Function cellcolor(cell As Range) As Integer |
Цитата:
|
Drongo, на VBA. Собственно, я ее уже написал.
|
Цитата:
|
Drongo, очень просто. Там, где ты пишешь
Цитата:
Код:
=cellcolor(A1) |
Спасибо, решено!
|
Время: 11:53. |
Время: 11:53.
© OSzone.net 2001-