Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Excel FAQ (Часть 1)

Модерирует : gyra, Maz

Widok (01-04-2006 15:33): лимит страниц. переезжаем сюда.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100

   

ymy



YourMyYour
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Просьба к посетителям топика дополнять шапку наиболее часто задаваемыми вопросами со ссылками на ответы в обязательном порядке

 
  • Смена представления имен столбцов с буквенного на цифровое и обратно
  • Надстройки "Сумма прописью"
     
    Тема Excel VBA в разделе Прикладное программирование
     
     


    Вот такой вопрос у меня, помогите хто может: Как в Exсel-e ограничить число строк и колонок отображаемых на листе, точно можно, сам видел, но как?, в непонятках.

  • Всего записей: 1339 | Зарегистр. 22-04-2002 | Отправлено: 17:00 17-09-2002 | Исправлено: Maz, 22:44 24-02-2017
    icywind



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Задача:
    Имеется диапазон А2:A12. В нескольких ячейках подряд из этого диапазона содержатся данные. Необходимо найти последнюю (первую) заполненную ячейку в этом диапазоне и присвоить ее значение ячейке A1. Как это сделать в VBA я более-менее представляю, а можно ли это сделать с использованием стандартных функций Excel?

    Всего записей: 95 | Зарегистр. 26-10-2004 | Отправлено: 20:24 29-03-2005
    ivas



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    В стандартных функциях не более семи вложенных аргументов. Поэтому надо будет писАть несколько формул. Для диапазона А2:A8 нахождение первой заполненой ячейки будет выглядеть примерно так:
    =ВЫБОР(ЕСЛИ(A2<>0;1;ЕСЛИ(A3<>0;2;ЕСЛИ(A4<>0;3;ЕСЛИ(A5<>0;4;ЕСЛИ(A6<>0;5;ЕСЛИ(A7<>0;6;ЕСЛИ(A8<>0;7)))))));A2;A3;A4;A5;A6;A7;A8)
    Последней, соответственно, наоборот. От А12 к А2.  
    Для нахождения остальных значений (пустот) надо будет задействовать ещё несколько ячеек для формул, вспомогательных, так сказать. Более простого способа навскидку не вижу. Да и без понимания глобальной задачи трудно подсказать.

    Всего записей: 3175 | Зарегистр. 23-11-2004 | Отправлено: 01:01 30-03-2005 | Исправлено: ivas, 01:04 30-03-2005
    icywind



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ivas
    Спасибо, только так точнее (вдруг кому еще понадобится):
    =ЕСЛИ(A2<>"";A2;ЕСЛИ(A3<>"";A3;ЕСЛИ(A4<>"";A4;ЕСЛИ(A5<>"";A5;ЕСЛИ(A6<>"";A6;ЕСЛИ(A7<>"";A7;ЕСЛИ(A8<>"";A8)))))))
     

    Всего записей: 95 | Зарегистр. 26-10-2004 | Отправлено: 04:56 30-03-2005 | Исправлено: icywind, 04:58 30-03-2005
    ivas



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    icywind
    Так вот: как раз точнее к твоему вопросу моя формула. А твоя ремарка, которая без необходимости - ответ на:

    Цитата:
    Да и без понимания глобальной задачи трудно подсказать.
    Здесь я упустил слово "точно". Удалось победить - хорошо. А замечания делать нехорошо. Получилось, что я ерунду тебе какую-то наплёл.
    Успехов.


    ----------
    "Не видно ни ..." (три буквы, но они у каждого свои)

    Всего записей: 3175 | Зарегистр. 23-11-2004 | Отправлено: 10:53 30-03-2005
    likbez



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    или он (эксель-2002) страшно глючит, или мы его совсем не знаем.
    пытаемся при включенном автофильтре выбрать "условие..." - например "начинается с..." или "содержит..." , подставляем любые цифры, которые точно содержатся в ячейках этого столбца - и в результате не отображается ни одна ячейка. что это?

    Всего записей: 1100 | Зарегистр. 10-05-2002 | Отправлено: 13:14 30-03-2005
    Alexdon

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    likbez

    Цитата:
    подставляем любые цифры, которые точно содержатся в ячейках этого столбца  

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

    Всего записей: 89 | Зарегистр. 23-09-2002 | Отправлено: 15:49 30-03-2005
    likbez



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alexdon

    Цитата:
    для "содержит" и "начинается" - нужны текстовые значения

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

    Всего записей: 1100 | Зарегистр. 10-05-2002 | Отправлено: 15:58 30-03-2005
    Alexdon

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    likbez

    Цитата:
    а как это дело автоматизировать?

    Если готов пожертвовать одним столбцом -  
    -ставишь в него формулу =текст(ссылка на число - напр.:A1;"@") - копируешь во все ячейки столбца - и фильтруешь этот столбец как текст.

    Всего записей: 89 | Зарегистр. 23-09-2002 | Отправлено: 18:01 30-03-2005
    knyshow2

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Ребята, ну выручайте - нужно посчитать количество ячеек, заполненных данными из заданного диапазона и результат вставить в определенную ячейку.
     
    на данный момен выкручиваюсь следующим образом:
    есть скрытый столбец, в котором в ячейках формулы типа =ЕСЛИ(ЕПУСТО(G33);0;1), т.е. если одна из интересующих меня ячеек пустая, то в этой ячейке будет ноль. если непустое - 1.
    Дальше простым суммированием значений этого столбца вычисляю количество ячеек с данными.
     
    И все бы прекрасно, но появилась необходимость обходиться БЕЗ дополнительного столбца.
     
    Еще раз сформулирую свой вопрос: посчитать количество ячеек, имеющих какие-либо данные, из определенного диапазона и вставить результат в другую ячейку. Сделать это необходимо БЕЗ использования дополнительных/вспомогательных ячеек и/или столбцов.
     
    Это реально?
     
     
     
    Добавлено:
    Вопрос второй:
     
    Имеем лист с двумя столбцами. Первый столбец пустой, второй - с данными.
    Нужно чтобы при клике на одной из ячеек первого столбца в этой ячейке появлялся символ '*'. При повторном клике по этой же ячейке она должна очиститься. Ничего другого в ячейку ввести нельзя.
     
    Наскоко реально?

    Всего записей: 273 | Зарегистр. 02-09-2004 | Отправлено: 17:54 31-03-2005
    ivas



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    knyshow2
    Если значения только числовые: =СЧЁТЕСЛИ(A1:D10;">0")
    Если смешанные (цифры и текст): =СЧЁТЗ(A1:D10)
     
    По второму вопросу прямо при клике - нельзя. Только макрос: при выделении ячейки в текущую установится нужный символ, даже можно установить любой формат и заливку цветом.

    Всего записей: 3175 | Зарегистр. 23-11-2004 | Отправлено: 18:30 31-03-2005
    NecroHill



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Приветствую!
     
    Задача следующая:
    Есть книга, в которой 5 листов. Каждый лист заполняет определенный человек,который отвечает за ввод информации. Каким образом сделать в VBA чтоб при загрузке файла предлагалось ввести пароль, и после идентификации пользователя листы, которые не в его компетенции, становились скрытыми?
    И как запускать этот макрос автоматически при открытии файла?
     
    Спасибо!

    Всего записей: 803 | Зарегистр. 23-12-2001 | Отправлено: 20:35 31-03-2005
    HeT BonpocoB



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Уже замучался с этим ёкселем! подскажите кто нибудь   , можно ли ко ВСЕМ ячейкам пименить какой нибудь "формат" чтобы:
    а) он был числовой, с двумя знаками после запятой;
    б) но при ^этом^ целые числа отображались не как "4,00" или "5,50" а как просто "4" и "5,5".

    Всего записей: 1342 | Зарегистр. 30-03-2003 | Отправлено: 08:36 01-04-2005 | Исправлено: HeT BonpocoB, 08:40 01-04-2005
    knyshow2

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

    Цитата:
    Если смешанные (цифры и текст): =СЧЁТЗ(A1:D10)

     
    Во, работает, спасибо.
     

    Цитата:
    Только макрос:

    ivas, я в маросах не силен. можешь семплик подкинуть и подсказать, куда и как его засунуть?
     

    Всего записей: 273 | Зарегистр. 02-09-2004 | Отправлено: 10:07 01-04-2005
    ivas



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    HeT BonpocoB
    Формат ячеек: общий
     
    Добавлено:
    Но ты сам себе противоречишь пунктом а) и б). Или так или этак, в смысле или две цифры после запятой или "4" и "5,5".
     
    Добавлено:
    knyshow2
    Выделяешь нужную ячейку, кликаешь "ЗаписАть макрос", делаешь то, что тебе нужно, кликаешь кнопку "Остановить запись". Потом макросу назначаешь свою кнопку или горячую клавишу.

    Всего записей: 3175 | Зарегистр. 23-11-2004 | Отправлено: 18:21 01-04-2005
    HdHg



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Люди  
    Вопрос конечно извращенный, но ...  
    В EXCELe есть стандартная функция СМЕЩ() или OFFSET() дающая ссылку на ячейку (диапазон) смещенную относительно другой ячейки (диапазона).  
     
    Вопрос в чем: есть ли подобная стандартная EXCEL функция дающая ссылку на лист относительно другого листа. Т.е. я хочу сослаться на лист со смещением относительно текущего, или другого листа, или хочется сослаться на 3й лист книги, именно функция должна возвращать конкретное имя листа.  
     
    Как это сделать на VBA я знаю, можно ли такое сделать без VBA.  
    Я понимаю, что проще написать собственную функцию и добавить ее к общим, но интересует реализация стандартными функциями.

    Всего записей: 63 | Зарегистр. 27-10-2002 | Отправлено: 20:25 01-04-2005
    ivas



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    HdHg

    Цитата:
    Как это сделать на VBA я знаю, можно ли такое сделать без VBA ... но интересует реализация стандартными функциями.

    Зачем? То же самое: что ты напишешь формулой стандартную функцию, что свою. Что за изврат? Может объяснишь? Я искренне не понимаю!

    ----------
    "Не видно ни ..." (три буквы, но они у каждого свои)

    Всего записей: 3175 | Зарегистр. 23-11-2004 | Отправлено: 22:05 01-04-2005 | Исправлено: ivas, 22:06 01-04-2005
    HeT BonpocoB



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ivas
    Цитата:
    Формат ячеек: общий  
    не соответствует условию a)!
    проблема в том, что когда при "общем формате" результат выходит за размеры ячейки, ОНО ег округляет, что не всегда зметишь, и что не есть хорошо!    
     
    Или как-то надо ему запретить округлять знаки после запятой в "общем" формате??

    Всего записей: 1342 | Зарегистр. 30-03-2003 | Отправлено: 23:18 01-04-2005
    ivas



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    HeT BonpocoB
    Универсального средства не найдешь. Или так или никак. Используй функцию ОКРУГЛ()

    Всего записей: 3175 | Зарегистр. 23-11-2004 | Отправлено: 23:36 01-04-2005
    HeT BonpocoB



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ivas
    Цитата:
    Используй функцию ОКРУГЛ()
    ОКРУГЛ() в этом деле не помогает ...

    Цитата:
    Универсального средства не найдешь.
    ясно, я так и думал...
    p.s. никто случайно не знает адрес того, кто к ёкселю справку делал?  

    Всего записей: 1342 | Зарегистр. 30-03-2003 | Отправлено: 01:21 02-04-2005
    ivas



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    HeT BonpocoB
    Домашний? Пойдешь разбираться?
    Support будут отвечать на вопросы только если ты зарегистрированный пользователь, да и то не быстро, неохотно, не обстоятельно. Плавали, знаем.

    Всего записей: 3175 | Зарегистр. 23-11-2004 | Отправлено: 09:02 02-04-2005
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100

    Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Excel FAQ (Часть 1)
    Widok (01-04-2006 15:33): лимит страниц. переезжаем сюда.


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru