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

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

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

Maz (27-03-2018 08:04): Microsoft Excel FAQ (часть 6)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

   

Widok



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

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

 
  • Смена представления имен столбцов с буквенного на цифровое и обратно


    Сумма прописью
  • Надстройка "PROP" (сумма прописью)
  • надстройка Excellerator (c) Michael Zemlanukha & Maxim Shemanarev
  • макрос Num2String


  • Список соответствия имен функций в английской и русской версиях Excel или здесь
  • Описание Microsoft Excel File Format (eng.)
  • Горячие клавиши в Excel (табличка)
  • краткая, но емкая инструкция для чайников по добавлению готовых макросов (на примере макросов по увеличению размера шрифта на X пунктов от мемебера ferias
     
    Предыдущие ветки топика: Часть 1 | Часть 2 | Часть 3 | Часть 4
     
    Все вопросы по программированию (макросы, скрипты, пользовательские функции и т.п.) обсуждаются в теме Excel VBA в разделе Прикладное программирование.
     
    При необходимости выложить скриншот, пользуйтесь сервисом ImageShack® (ограничение на размер файла <1.5 Mb)
     
    Книга Джон Уокенбах "Подробное руководство по созданию формул в Microsoft Office Excel 2002" PDF 34МБ Файлы к книге

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 13:13 09-03-2010 | Исправлено: uzeerpc, 12:47 20-12-2017
    scup



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Помогите, вроде простая задача, но я где-то торможу: итак, дан столбец А1:А100, в соседний столбец выводить разность текущей ячейки и предыдущей. т.е. в B2 пойдёт запись =А2-А1, B3 пойдет =А3-А2 и т. д. Но если предыдущая ячейка равна нулю, то отнимать надо ближайшую ненулевую, которая выше.

    Всего записей: 556 | Зарегистр. 04-04-2003 | Отправлено: 13:19 29-03-2011
    asbo

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Не совсем простая... но, в общем случае, понадобится промежуточный столбец B, а результаты - в C. Первую строку оставляем пустой.
     
    A2:A100 - данные
    B2 - =ЕСЛИ(A2=0,B1,A2)  , --> ;
    C2 - =B2-B1

    Всего записей: 1805 | Зарегистр. 03-10-2006 | Отправлено: 13:38 29-03-2011 | Исправлено: asbo, 13:47 29-03-2011
    scup



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Дело в том, что в моём случае может быть несколько нулевых ячеек подряд. asbo в таком случае твой способ будет выдавать ошибку.
    Отнимать надо ближайшую ненулевую, которая выше

    Всего записей: 556 | Зарегистр. 04-04-2003 | Отправлено: 13:50 29-03-2011 | Исправлено: scup, 13:51 29-03-2011
    asbo

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    C2 - =ЕСЛИ(A2=0,A2-B1,B2-B1)

    Всего записей: 1805 | Зарегистр. 03-10-2006 | Отправлено: 14:02 29-03-2011
    scup



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    asbo :) А если нулевых ячеек три сотни? Автофильтр применять нельзя. Надо как то ненулевые значения ячеек выводить в дополнительный столбец.

    Всего записей: 556 | Зарегистр. 04-04-2003 | Отправлено: 14:13 29-03-2011
    asbo

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Хоть тридцать три. Логика от этого не меняется.
     
    * Надо как то ненулевые значения ячеек выводить в дополнительный столбец.  
    - Ненулевые какого столбца? В какой дополнительный? Да и при чем здесь автофильтр?  
     
    Ну и, если это регулярная задача, не разовая, то надо макрос писать - все эти формулы - палиатив, имо. Сейчас мы учли наличие последовательных нулевых, потом возникнет условие на отрицательные, потом на пустые, потом на текст и понеслась... Надо полностью сформулировать хотелки, а не по очереди :) Что сейчас-то не так?

    Всего записей: 1805 | Зарегистр. 03-10-2006 | Отправлено: 14:25 29-03-2011
    scup



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    asbo
    Получилось, спасибо.

    Всего записей: 556 | Зарегистр. 04-04-2003 | Отправлено: 14:49 29-03-2011
    asbo

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ну и слава Богу. Мне часто приходится подобные разовые схемы строить со сверкой предыдущих-следующих значений. Каждый раз писать макрос - не с руки. А вот с использованием последовательности промежуточных столбцов - часто выручает. Наглядно, легко трансформируется etc.

    Всего записей: 1805 | Зарегистр. 03-10-2006 | Отправлено: 14:55 29-03-2011
    VicKos

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    scup
    Если я правильно понял условия (текущая ячейка (уменьшаемое) в столбце A может иметь нулевое значение, а вычитаемое должно отличаться от нуля), то можно ещё так попробовать:
    в B2  =A2-A1
    в В3  =ЕСЛИ(A2=0;A3+B2;A3-A2)  и "растянуть" эту формулу вниз до конца.

    Всего записей: 44 | Зарегистр. 28-07-2010 | Отправлено: 17:11 29-03-2011
    kimtan

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    scup
    В ячейку B2  =A2-ПРОСМОТР(2;1/($A$1:A1<>0);$A$1:A2) и растянуть вниз

    Всего записей: 291 | Зарегистр. 28-02-2009 | Отправлено: 19:10 29-03-2011
    NEW_MAKC



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    можно ли как то сделать такое:
    допустим в столбце "А" идут по строкам числа (к примеру)
    2 175
    2 175
    2 809
    2 175
    1 810
    2 175
    2 175
    3 300
    1 537
    2 175
    1 537
    2 027
    1 810
    2 175
    3 120
    1 810
    2 175
    460
    1 810
    2 027
    460
     
    надо в столбце "В" чтоб числа стали кратны 50 в большую сторону. т.е. должно получится так:
    2200
    2200
    2850
    2200
    1850
    2200
    2200
    3300
    1550
    2200
    1550
    2050
    1850
    2200
    3150
    1850
    2200
    500
    1850
    2050
    500

    Всего записей: 725 | Зарегистр. 11-12-2004 | Отправлено: 00:13 31-03-2011
    LaCastet



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

    Цитата:
    надо в столбце "В" чтоб числа стали кратны 50 в большую сторону

    =ОКРВВЕРХ(A1/50;1)*50

    ----------
    Пиво — это еще одно доказательство того, что Господь любит нас и хочет, чтоб мы были счастливы!

    Всего записей: 4566 | Зарегистр. 27-07-2005 | Отправлено: 00:34 31-03-2011
    asbo

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NEW_MAKC, я предположил, что пробелов не будет...
     

    Цитата:
    ...кратны 50 в большую сторону...

    =ОКРВВЕРХ(B3,50) или =ОКРУГЛ(B3,50)
    Но второй вариант мне кажется странным, а поэтому недостоверным... хоть результаты и одинаковы...
     
    Если по школьному округлять до 50, то что-то типа:
    =50*ОКРУГЛ(B3/50,0)
     
    , --> ;

    Всего записей: 1805 | Зарегистр. 03-10-2006 | Отправлено: 00:34 31-03-2011 | Исправлено: asbo, 00:36 31-03-2011
    NEW_MAKC



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    щя попробую
    всем спасибо
     
    P.S.  
    вариант LaCastet - сработал
     
    вариант'ы asbo - к сожалению нет или я что то не так сделал
    но всё равно спасибо

    Всего записей: 725 | Зарегистр. 11-12-2004 | Отправлено: 00:50 31-03-2011 | Исправлено: NEW_MAKC, 00:58 31-03-2011
    asbo

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NEW_MAKC
    Цитата:
    или я что то не так сделал  
    , --> ;
    Красным, что-ли писать...

    Всего записей: 1805 | Зарегистр. 03-10-2006 | Отправлено: 01:14 31-03-2011
    kostoz

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Всем привет,
    Есть таблица расстояний между городами, типа
       г1  г2  г3  г4
    г1  0   3   7   2
    г2  3   0   5   4
    г3  7   5   0   9
    г4  2   4   9   0
     
    На основе этой таблицы нужно организовать подсчет расстояния как между двумя городами, так и несколькими. Например в списках выбираем один город, второй, третий...седьмой. И получаем результат. Как реализовать, подскажите.
     
    ps городов 50 шт
     
    -----------------------------
    Выпадающий список 1
    Выпадающий список 2
    ....
    Выпадающий список 7
     
    Результат.
    -----------------------------
     
    пример:
     
    1. Минск
    2. Киев
    3. Воронеж
     
    Минск -> Киев - 700 км
    Киев -> Воронеж - 600 км
    ИТОГО 1300 км
     

    Всего записей: 44 | Зарегистр. 07-04-2005 | Отправлено: 23:26 31-03-2011 | Исправлено: kostoz, 20:10 01-04-2011
    shaniev

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    kostoz
    Как вариант формула в М3- =ИНДЕКС($C$3:$I$9;K3;L3) - сетка 7 на 7, выпадающие в K3 и L3...

    Всего записей: 34 | Зарегистр. 03-02-2006 | Отправлено: 16:54 01-04-2011
    kostoz

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    shaniev
    выдает ошибку #ЗНАЧ!
     
    Кто подскажет, где косяк? Вот файл: http://ifolder.ru/22738061

    Всего записей: 44 | Зарегистр. 07-04-2005 | Отправлено: 20:08 01-04-2011 | Исправлено: kostoz, 20:22 01-04-2011
    shaniev

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    kostoz
    Вариант - "=ИНДЕКС($E$2:$AX$47;ПОИСКПОЗ(AZ2;$A$2:$A$47;0);AZ4)"
    ps Объединенные ячейки - большое зло..

    Всего записей: 34 | Зарегистр. 03-02-2006 | Отправлено: 20:31 01-04-2011
    kimtan

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

    Цитата:
    Вариант - "=ИНДЕКС($E$2:$AX$47;ПОИСКПОЗ(AZ2;$A$2:$A$47;0);AZ4)"

    Так тоже работать не будет

    Всего записей: 291 | Зарегистр. 28-02-2009 | Отправлено: 21:05 01-04-2011
       

    Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

    Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Excel FAQ (часть 5)
    Maz (27-03-2018 08:04): Microsoft Excel FAQ (часть 6)


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru