![]() |
![]() |
Правила Форума редакция от 22.06.2020 |
|
|
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже. |
|
![]() |
|
Опции темы | Опции просмотра |
![]() |
![]() |
![]() |
![]() AlexeyVik, что такое для экселя 500 строк? Всё распечатывается на 10-12 листах.
По вопросу №1. Да, Вы правильно думаете, эта функция мне нужна только для того, чтобы её вложить в функцию ЕСЛИ. Дальше всё просто. У меня уже есть готовая формула, загвоздка только в этой пресловутой функции, которая проверяет, есть ли в строке заданное значение. Я пробовал вложить туда функции ГПР и ПРОСМОТР, но они выдают значение ошибки, если в строке заданного значения нет. Поэтому весь результат возвращается в виде ошибки (#Н/Д! или #ЧИСЛО!, в зависимости от функции). По вопросу №2. Точнее будет сказать, что: - в первой строке ссылка на 1-ю; - во второй строке ссылка на 5-ю; - в третьей строке ссылка на 9-ю; - ...; - в сто двадцать первой строке ссылка на 481-ю. И наоборот: - в первой строке ссылка на 1-ю; - в пятой строке ссылка на 2-ю; - в девятой строке ссылка на 3-ю; - ...; - в четыреста восемьдесят первой строке ссылка на 121-ю. Сама формула простая - умножение, или там, деление. Главное - чтобы она ссылалась, как я описал. Номера строк могут быть разными (например, начинаться последовательность строк может не с первой, а, скажем, с десятой строки), важно, чтобы она имела такой вот шаг (4). Нужно это для того, чтобы просчитать значения аргументов, которые я ввожу в одну таблицу, но нужно, чтобы отображались они - в другой таблице. Эта таблица (с результатами) содержит строки, которые объединены в группы по 4 строки и заголовочные ячейки каждой такой группы - объединены. Вот в них-то и должен появляться результат (моего непосильного труда). P.S. У меня уже разгорелся нешуточный спортивный интерес относительно этой возможности экселя. Так что, AlexeyVik, если нет времени самому сочинять фунцию, отпишитесь мне в личку или в асю. А то я спать не буду... Добавлено через 3 минуты Поздравьте меня с присвоением очередного воинского звания "Постоялец". Последний раз редактировалось Deputy; 19.12.2007 в 16:52.. Причина: Добавлено сообщение |
|
![]() |
![]() |
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение: |
Реклама: | asus vivobook go 15 e1504ga bq550 | как защитить вывеску от снега | михаил светлов теплоход на валаам 8 июня из москвы | круиз на валаам и кижи из санкт петербурга | купить маленький |
![]() |
![]() |
![]() Deputy, ты не всё понял.
Что я тебе предложил пишется на VBA и посмотрев пример ты (думаю) не сможеш повторить по образцу. Поэтому здесь будет лучше иметь конкретное тех.задание. Посмотри http://www.nowa.cc/showthread.php?t=71171 На мой взгляд возможности Excel если и ограничены то не на много.
__________________
Вежливость придумали для того - чтобы скрыть недостаток добра в человеческих отношениях. |
|
![]() |
![]() |
Сказали спасибо: |
![]() |
![]() |
![]() Deputy, Запись макроса =Сервис-макрос-начать запись пишешь имя макроса (выполняешь необходимые действия (перемещения, копирование, вставку и др.), жмешь кнопку стоп). Alt+F8 заходишь, изменить – видишь что написано. Правишь как тебе нужно(придет с опытом)
По первому вопросу, лично мне не все понятно. ![]() Не бойся вкладывать одну формулу в другую. Возвращает формула ошибку, обработай ее встроенными функциями Экселя. Я иногда пишу вот такие мегаформулы(ниже), и все прекрасно работает. И как писать такие формулы придумал не я, все из книг. Наморщить мозг нужно один раз потом просто пользуйся. На такие формулы обязательно пиши коменты. ![]() ![]() Удачи. =ЕСЛИ(ЕОШИБКА(ЛЕВСИМВ(ЕСЛИ(ЕОШИБКА(НАЙТИ("(";E1;1) );"";ПРАВСИМВ(E1;НАЙТИ(")";E1;1)-НАЙТИ("(";E1;1)));ДЛСТР(ЕСЛИ(ЕОШИБКА(НАЙТИ("(";E1; 1));"";ПРАВСИМВ(E1;НАЙТИ(")";E1;1)-НАЙТИ("(";E1;1))))-1));"";ЛЕВСИМВ(ЕСЛИ(ЕОШИБКА(НАЙТИ("(";E1;1));"";ПР АВСИМВ(E1;НАЙТИ(")";E1;1)-НАЙТИ("(";E1;1)));ДЛСТР(ЕСЛИ(ЕОШИБКА(НАЙТИ("(";E1; 1));"";ПРАВСИМВ(E1;НАЙТИ(")";E1;1)-НАЙТИ("(";E1;1))))-1)) |
|
![]() |
![]() |
Сказали спасибо: |
![]() |
![]() |
![]() По первому вопросу всё оказалось просто. Простая функция ИЛИ.
Вот пример (внизу, в рамке - текст формулы): ![]() Хотя формула получится и длинноватая, но это самый короткий вариант. А с макросами обязательно позанимаюсь, спасибо. Книжку уже скачал. Правда, я не совсем себе представляю, что это такое - макрос... |
|
![]() |
![]() |
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение: |
![]() |
![]() |
|||||||||||||||||||||||
![]() Deputy, функция ИЛИ(логическое_значение1;логическое_значение2;...)
Проверяет, имеет ли хотя бы один из аргументов значение ИСТИНА, и возвращает значение ИСТИНА или ЛОЖЬ. Значение ЛОЖЬ возвращается только если все аргументы имеют значение ЛОЖЬ. а тебе
ну хотя-бы скажи что может там быть кроме даты. Если кроме даты и пустой ячейки не может быть ничего, можно просто воспользоваться функцией =ЕСЛИ(A1<>0;"истина";"ложь") По второму вопросу ничего кроме VBA предложить не могу. Даже написание макроса не всегда может помочь т.к. макрос может только повторить проделанные один раз действия. Но если в следующий раз будет строк больше, чем записано в макросе то эти строки не будут обработаны. В макросе ни когда не запишется цикл, не запишется условие и.т.д. Хотя я тоже не брезгую написанием макросов, но исключительно для того, чтобы не ошибиться в синтаксисе.
__________________
Вежливость придумали для того - чтобы скрыть недостаток добра в человеческих отношениях. |
||||||||||||||||||||||||
![]() |
![]() |
![]() |
![]() |
|||||||||||||||||||||||
![]()
мда .... а если так =ЕСЛИ(C2=ПРОСМОТР(C2;D2:D7);ИСТИНА;ЛОЖЬ) тогда формула будет покороче...... или еще короче =ИЛИ(C2=ПРОСМОТР(C2;D2:D7)) насчет макроса .... информация более к размышлению: вот как вариант выбираем клеточку А2 , жмем сервис - макрос -начать запись, выскакивает табличка, выбираем название макроса, назначаем сочетание клавишь, например контрол+ L, жмем ок, в маленьком окошечке что выскочит выбираем относительную ссылку, теперь копируем ячейку а2 в а4 и правим ручками формулу (вместо с2 пишем с3), жмем птичку сохранить формулу, ставим выделение на а4, жмем кнопочку остановить запись. теперь жмем контрол + L... правда диапазон Dx:Dy тоже смещаеться, как ето побороть не знаю
__________________
Подпись удалена! Последний раз редактировалось PEHDOM; 21.12.2007 в 12:13.. |
||||||||||||||||||||||||
![]() |
![]() |
![]() |
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]()
Кроме даты там ничего не может быть: Целая строка с датами, расположенными в порядке возрастания (только не подряд) и среди них несколько пустых ячеек.
Что покороче, то это - точно, только:
Вот только что ещё раз попробовал (Вашу формулу, просто скопировал и заменил в ней адреса ячеек). Результат: #Н/Д. Хм. Может, попробовать ЕСЛИОШИБКА... Да. Всем спасибо за объяснение, с какой стороны подойти к макросу. Добавлено через 1 час 36 минут И ещё такой вопрос к уважаемым знатокам: Если я сохраню книгу как шаблон, макросы, которые были в книге, сохранятся ли вместе с ней или придётся записывать заново? Кстати, ничего сложного в них, оказывается, нет. Ещё раз спасибо за помощь. Последний раз редактировалось Deputy; 21.12.2007 в 20:03.. Причина: Добавлено сообщение |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение: |
![]() |
![]() |
|||||||||||||||||||||||
![]()
да чтото ету ситуевину я не просек ,но ексель есть тока на работе, дома не держу за ненадобностью, в понедельник попробую чтонить придкмать...
__________________
Подпись удалена! |
||||||||||||||||||||||||
![]() |
![]() |
Сказали спасибо: |
![]() |
![]() |
![]() Deputy, если под датами можно разместить скрытую строчку, то можно сделать так: В скрытую строчку добавить формулу А1-$<Ячея с проверяемой датой>. Далее делается формула - перемножить результат разностей. Если она дала в результате "0" - то такая дата есть.
__________________
Беда пришла откуда ее не ждали - наступило утро! ![]() i7 4770, 24Gb, 8Gb 1070Ti, X-Fi Fatal1ty, APC SUA1000, iiYama 514, TH-50PF11, Behringer MS20 |
|
![]() |
![]() |
Сказали спасибо: |
![]() |
![]() |
![]() В Excel в диалоге открытия файла (поврежденного) у кнопочки "открыть" справа можно раскрыть список (нажав на треугольник) и выбрать команду "открыть и восстановить".
|
|
![]() |
![]() |
![]() |
![]() |
![]() Если конкретно, то нужно вставить в документ метку (label) а также кнопку
Насколько я помню, в 2003м была панель конструктор с подобными элементами управления. А где это в 2007м? |
|
![]() |
![]() |
![]() |
![]() |
![]() Нажми правой кнопкой после послденей менюшки (Вид) и войди в "Настройка панели быстрого доступа", в списке выбери "Все команды" и найди то, что тебе надо (Кнопки там точно есть... листай по алфавиту!!!)
|
|
![]() |
![]() |
![]() |
![]() |
![]() luivilla, я так полагаю тебе нужна панель "разработчик" в 2007, которая по умолчанию не видна. Нажимаешь Главную кнопку Office (та что в самом углу) --> параметры Excel --> и в основных параметрах ставишь "Показывать вкладку Разработчик на ленте"
Из нее пишутся макросы, делаются кнопки итд Удачи!
__________________
Я забросил свой акк на рапиде, так что линки на мои книги скоро помрут. Если надо что-то конкретное - пишите в личку, и я залью. Не засоряйте темы! |
|
![]() |
![]() |
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение: |
![]() |
![]() |
![]() Zhlobny Hmur, спасибо, остроумно, я не догадался. Будем считать, что с этим вопросом покончено.
По перетаскиванию ячеек: записал макрос. То есть скопировал-вставил первые 5 ячеек, а потом в коде макроса добавил остальные 145. Титанический труд, доложу я вам. А вот со следующим вопросом, думаю, придётся писать код. Я уже примерно представляю себе, что это такое, только времени нет, чтобы разобраться более-менее. Новый год, понимаешь, даже в выходные жена покоя не даёт. Если у кого есть возможность, помогите, пожалуйста! Вот, собственно, сам вопрос (в качестве контрольного выстрела): ![]() Ведь можно как-то создать пользовательскую функцию. С имеющимися в экселе функциями, сдаётся мне, ничего не получится. Последний раз редактировалось Deputy; 23.12.2007 в 23:56.. |
|
![]() |
![]() |
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение: |
![]() |
![]() |
Постоялец
![]() ![]() ![]() ![]() ![]() Пол: ![]() Регистрация: 05.02.2007
Адрес: Москва
Сообщений: 662
Репутация: 271
|
![]() Такого рода задачи гораздо проще решаются с помощью баз данных.
Может имеет смысл перевести вам всю эту бодягу на MS Access?
__________________
Сергей Сергеевич |
![]() |
![]() |
Сказали спасибо: |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
MS Excel - настройка, импорт/экспорт | andrey_k | МOffice, Переводчики (словари), Органайзеры, Текстовые редакторы | 365 | 15.12.2014 15:42 |
[Импорт] Вопросы и проблемы антивируса ESET / NOD32 :-)) | beloved | Безопасность | 175 | 27.11.2012 19:21 |
|
|