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

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

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

Widok (17-05-2007 19:48): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 101

   

Widok



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

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

 
  • Смена представления имен столбцов с буквенного на цифровое и обратно
  • Надстройки "Сумма прописью"
  • Список соответствия имен функций в английской и русской версиях Excel
  • Описание Microsoft Excel File Format
     
     
    Предыдущие ветки топика: Часть 1 |
     
    Все вопросы по программированию (макросы, скрипты, пользовательские функции и т.п.) обсуждаются в теме Excel VBA в разделе Прикладное программирование.
     
    При необходимости выложить скриншот пользуйтесь сервисом ImageShack® (ограничение на размер файла <1.5 Mb)

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 15:32 01-04-2006 | Исправлено: Maz, 22:45 24-02-2017
    slech



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Mady
    Всё понял, спасибо...

    Всего записей: 4893 | Зарегистр. 10-11-2004 | Отправлено: 22:44 17-04-2006 | Исправлено: slech, 22:45 17-04-2006
    Yuk



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

    Код:
    =IF(COUNTIF($A$1:$A$5,B1)>0,$C$1,"")

     
     
    Добавлено:
    Давненько я вопросы не задавал.
    Как в Условное форматирование вставить, если ячейка равна #N/A? То есть если формула возвращает ошибку. Если нет ошибки, может быть как число, так и текст.  
    Все, что возможно, уже перепробовал, не получается.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 23:40 17-04-2006
    Mushroomer



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Yuk
    Приведи, пожалуйста, пример, когда функция возвращает #N/A. А то я только Нет данных могу сгенерировать.

    Всего записей: 22839 | Зарегистр. 19-01-2002 | Отправлено: 07:00 18-04-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Mushroomer
    Например,
    =ПОИСКПОЗ(C1;A1:A5;0)
    возвращает #N/A, если C1 не встречается в A1:A5.
    (Формулу перевел с английского, извиняюсь, если не правильно. #N/A в русском может именно Нет данных.)
     
    В принципе, вопрос можно расширить. Если формула возвращает ошибку (любую), как сделать это условием для условного форматирования?
     
     
    Добавлено:
    Уже нашел
    http://www.meadinkent.co.uk/conditional-formatting2.htm
    Причем я это пробовал, но забыл сменить Cell Is на Formula Is.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 18:12 18-04-2006
    AnitrA



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    народ не успеваю читать полностью топик из-за работы.. вы уж простите если такой вопрос возникал уже ранее.
     
    Господа хотел бы получить вашу консультацию по следующему вопросу.
     
     
    Скажем у меня есть  
     
    документ Elxcel который содержи 3 листа А и B и С
     
    Задача:
    Нужно реализовать динамическое обновления листа А при изменениях в B и С. Как сделать такие привязки в Excel-е. (то есть затык у меня в том не в то как добавить 1 ячейку из В в А, а в том как добавлять… ну скажем диапазон ячеек которые появляются в Б и С)
     
    Пример алгоритмик или что-то в этом роде… того что я бы хотел получить.
     
    1. Лист А содержит в себе основные строки OC1 и ОС2 а также ОС3 и ОС4
    Лист В ) пуст (но в нем есть 2 строки В1 и В2 между которыми я буду в бивать инфу. Диапазон всех строк с данными между ними должен отображаться в А динамически. Лист С устроен аналогично листу Б.
     
    2. Заношу данные в лист В заполняю строки между В1 и В2 скажем (2 3 4 8 7 9 7)
    При этом в листе  А между ячейками ОС1 и ОС2 появляются данные (2 3 4 8 7 9 7)
     
    3. Произвожу заполнение листа С также как и б но с инфой ( в а п н у и з)
    В листе А между строками ОС3 и ОС4 происходит заполнение данных из С)
     
    4. Изменяю лист В дополняя в него между В1 и В2 еще 3 ячейки с данными (5 5 5)
    В листе А между  ОС1 и ОС2 долно появится следующее (2 3 4 8 7 9 7 5 5 5)
    Причем изменится должен только диапазон (количество ячеек) точесть между ОС1 и ОС2 дожно появится 3 новых ячейки причем так чтоб другие данные не входящие в диапазон никак не изменялись). То есть скажем если у нас  
     
    1 –я ячейка=ОС1
    2-я =ОС2
     
    Количество ячеек с данными будет рано 2м после проведения например добавления диапазона ячеек В1- В2 из листа В в А должна сложиться следующая ситуация  
     
    1-я ячека=ОС1
    2 = 2
    3= 3
    4=4
    5=8  
    6=7
    7=9
    8=7
    9=5
    10=5
    11=5
    12-я = ОС2
     
    Блин надеюсь вы поймете и поможете

    Всего записей: 1374 | Зарегистр. 14-08-2001 | Отправлено: 18:59 21-04-2006
    Dim75

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, как можно через формулу или функцию данные находящиеся в строках по столбцам, разнести в один столбец. Т.е. без постоянного указания на нужную ячейку или замену букв в имени столбца. Грубо говоря функция транспортировать, но с живой привязкой к ячейкам в столбцах, так, как мы это делаем указывая ячейку в столбце и заполняем потянув за маркер.
    []

    Всего записей: 44 | Зарегистр. 19-08-2003 | Отправлено: 21:04 21-04-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Dim75
    Имеется в виду сделать, например, из матрицы 5х5 колонку 25х1?
    Если так, я такое делал только через макро. По-моему, единственное решение, Буду рад, если не прав.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 00:09 22-04-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AnitrA
    Можно через макро, например, так.
    в ThisWorkbook (Code):

    Код:
     
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    Dim oc2 As Range, oc4 As Range
        Select Case Sh.Name
        Case "B"
            Set oc2 = Range("oc2")
            oc2.Insert (xlDown)
            ThisWorkbook.Worksheets("A").Cells(oc2.Row - 1, oc2.Column).Value = Target.Value
        Case "C"
            Set oc4 = Range("oc4")
            oc4.Insert (xlDown)
            ThisWorkbook.Worksheets("A").Cells(oc4.Row - 1, oc4.Column).Value = Target.Value
        End Select
    End Sub
     

     
    Для работы этого кода необходимо дать имена ключевым ячейкам (с "ОС2" и "ОС4")
    Можно это делать автоматом при открытии файла, например, так (добавить туда же):

    Код:
     
    Private Sub Workbook_Open()
    Dim oc2 As Range, oc4 As Range
        Set oc2 = ThisWorkbook.Worksheets("A").Range("A:A").Find("OC2", LookIn:=xlValues)
        oc2.Name = "oc2"
        Set oc4 = ThisWorkbook.Worksheets("A").Range("B:B").Find("OC4", LookIn:=xlValues)
        oc4.Name = "oc4"
    End Sub
     

    Не учтено занесение изменений в определенные ячейки. Любое изменение ячейки в "В" или "С" вставиться в "А". Но только по одной ячейке. Если скопировать и вставить несколько ячеек, вставиться только первая.
     
    Извиняюсь, если не правильно понял задачу.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 10:27 23-04-2006
    AnitrA



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Что-то у меня ничего не добовляется..  
    Да не запускается что-то... его нет даже в списке запускаемых макросов... Куды его вставлять-то подскажи? а то я в VB пихал ( да хотел сразу спросить а В и С ячеки находятся на разных листах книги?)

    Всего записей: 1374 | Зарегистр. 14-08-2001 | Отправлено: 09:53 24-04-2006 | Исправлено: AnitrA, 10:28 24-04-2006
    surgutfred



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

    Всего записей: 589 | Зарегистр. 21-08-2001 | Отправлено: 10:12 24-04-2006
    Mushroomer



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    surgutfred
    Что значит отобрать? Тебе надо получить новую таблица? Автофильтр не устроит?

    Всего записей: 22839 | Зарегистр. 19-01-2002 | Отправлено: 10:30 24-04-2006
    surgutfred



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Да новую таблицу. Автофильтр не устроит, т.к контрагентов больше 800, с учетом повторений больше 3500 записей. А хочется быстрей.

    Всего записей: 589 | Зарегистр. 21-08-2001 | Отправлено: 13:03 24-04-2006
    stanzdor



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Извиняюсь за сумбур, но не знаю как сформулировать ситуацию - ну не программист я, попробую вобщем:
    Убытки=%Займа + расходы
    Займ=убытки+дельта, дельта стремиться к 0
    Как средствами excel'я это можно это дело "разрулить"? (желательно без VBA).
     

    Всего записей: 588 | Зарегистр. 12-04-2004 | Отправлено: 13:13 24-04-2006
    Mushroomer



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    surgutfred
    Цитата:
    у которых во всех вхождения признак "нет".  
    т.е. если есть Вася да, Вася нет, то Вася не подходит?

    Всего записей: 22839 | Зарегистр. 19-01-2002 | Отправлено: 13:36 24-04-2006
    surgutfred



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Mushroomer
    Да, нужны только Васи и Пети, у которых в признаках только НЕТ, и ни одного ДА

    Всего записей: 589 | Зарегистр. 21-08-2001 | Отправлено: 13:45 24-04-2006
    Mushroomer



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    surgutfred
    Подскажу идею (если без макросов):
    1) сортируешь по именам
    2) делаешь дополнительный столбец, где формула =ЕСЛИ(B2="нет";0;1). Разгоняешь формулу по столбцу
    3) Делаешь суммирующие итоги по именам (меню Данные -> Итоги)
    4) Если в итого по имени 0 - это твой случай.

    Всего записей: 22839 | Зарегистр. 19-01-2002 | Отправлено: 15:17 24-04-2006
    surgutfred



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Mushroomer
    Ну уже что-то близкое спасибо, теперь осталось нарисовать какую-нибудь формулу, что бы по нулевым итогам выбрать названеи контрагентов. Дома поковыряю.

    Всего записей: 589 | Зарегистр. 21-08-2001 | Отправлено: 16:22 24-04-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AnitrA
    Подразумевается, что у тебя есть листы "A", "B" и "C" (латиницей).
    А также, что в "А" ячейки с "ОС1" и "ОС2" в колонке А, а ячейки с "ОС3" и "ОС4" в колонке В.
    Нажимаешь Alt-F11 (VBA редактор). Находишь слева свой файл, под ним ThisWorkbook (надеюсь, в русском как и в английском Excele). Двойным кликом по нему открываешь справа код ThisWoorbook (Код). Вот туда и вставляй.
    B и C - не ячейки, а листы. Любое изменение в них вставляется в соответствующие места в "А".
    Если ничего не получится, дай е-мейл - пришлю файл.
     
    Добавлено:
    stanzdor
    Чужие мысли здесь никто не умеет читать.
    Пока задача, которую ты сформулировал, уровня начальной школы и не имеет к экселю никакого отношения.
    Если хочешь помощи, опиши, какие данные у тебя есть, в какие ячейки вводятся. Какую таблицу тебе надо. Какие величины переменные, какие постоянные.
    Для данной задачи, думаю, можно обойтись без VBA.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 18:23 24-04-2006
    surgutfred



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Mushroomer
    Вобщем пришлось сделать такой геморой
    Сделал как ты говоришь, получилось примерно так:
    имя        признак    рез
    вася          нет         0
    вася          нет         0
    вася Итог                 0
    петя            да         1
    петя            да         1
    петя Итог                  2
    вова          нет          0
    вова          да           1
    вова Итог                 1
     
    Естественно формула типа ЕСЛИ(рез=0;имя) меня не устроит, т.к. кроме искомого вася найдется еще и не нужный вова. Поэтому еще два промежуточных столбца- 1 с формулой =ЕПУСТО(признак), 2 с формулой =ЕСЛИ(пусто=ИСТИНА;ЕСЛИ(рез=0;"нет");" ")и будет так:
    имя        признак    рез       пусто          Искомое
    вася          нет         0         ЛОЖЬ
    вася          нет         0         ЛОЖЬ          
    вася Итог                 0         ИСТИНА       нет
    петя           да          1         ЛОЖЬ
    петя           да          1         ЛОЖЬ
    петя Итог                  2         ИСТИНА       ЛОЖЬ
    вова          нет          0         ЛОЖЬ
    вова           да          1         ЛОЖЬ
    вова Итог                  1         ИСТИНА       ЛОЖЬ
     
    осталось сделать автофильтр и отсортировать искомое по значению "нет".
     
    Может кто предложит более изящное решение? Буду только рад.
     
    Mushroomer Большое спасибо за пинок в нужном направлении.

    Всего записей: 589 | Зарегистр. 21-08-2001 | Отправлено: 02:59 25-04-2006 | Исправлено: surgutfred, 03:04 25-04-2006
    Gideon Vi

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго времени суток.
    Ребята, выручайте
    Есть прайс-лист, состоящий из нескольких страниц, вида: товар - цена (в разных столбиках). Цены вбиты статически, никаких формул (вроде) нет. Нужно понизить стоймость на сорок процентов у каждого товара. Возможно как-нибудь автоматизировать процедуру?
    Вопрос номер два: есть какие-нибудь программы для очистки *.xls от имформации, где и кем он создан? Или это решается силами сабжа?
     
    зы. В сабже нуб - обьясните на пальцах, пожалуйста =)

    Всего записей: 8075 | Зарегистр. 02-02-2004 | Отправлено: 07:03 25-04-2006
       

    Страницы: 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 101

    Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Excel FAQ (часть 2)
    Widok (17-05-2007 19:48): лимит страниц. продолжаем здесь


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru