Отправляет email-рассылки с помощью сервиса Sendsay

Форум по Microsoft Excel

  Все выпуски  

Hugo121>> Re: макрос для отбора повторов


Форум по Microsoft Excel

Выпуск 12
от 2013-03-28

Подписчиков: 569

Рассылка сайта "Профессиональные приемы работы в Microsoft Excel"

Основные разделы сайта
Статьи
Форум

Новости сайта в формате RSS
Новые сообщения форума в формате RSS
Читать в Яндекс.Ленте

Порекомендуйте нашу рассылку друзьям

Обратная связь
Поддержка
(форум рассылки)

Наши рассылки:

Рассылки Subscribe.Ru
Православные:
Ежедневные библейские чтения
Смоленский календарь
Для выздоравливающих алкоголиков и наркоманов
Книга "День за днем"
Книга "24 часа в сутки"
Ежедневные размышления анонимного алкоголика
Самообразование:
"Профессиональные приемы работы в Microsoft Excel"

Наши сайты

Профессиональные приемы работы в Microsoft Excel
Excel от новичка до эксперта

bonifatiy.narod.ru
В помощь выздоравливающим алкоголикам и наркоманам

Собор Смоленских святых. Жития, иконы, календарь памятных дат Смоленской епархии.

StudentTools.Narod.Ru Для тех, кто любит учиться

Наши друзья

VBAtips.ru -
подсказки и решения на VBA

wordexpert.ru
Профессиональная работа с текстом

planetaexcel.ru
Когда заешь - все просто

Новые сообщения форума "Профессиональные приемы работы в Microsoft Excel".



Hugo121>> Re: макрос для отбора повторов
2013-03-19 21:46 http://forum.msexcel.ru/index.php?action=profile;u=
Дарю идею - выводим всё в листбокс на форму, там галками помечаем, удаляем отмеченное кнопкой.
Работы много.


Wasilic>> Re: Макрос обновления страницы
2013-03-20 00:03 http://forum.msexcel.ru/index.php?action=profile;u=
Раз в минуту:
Sub Fresh()
Application.OnTime Now + TimeValue("00:01:00"), "Calc"
End Sub

Sub Calc()
    Calculate
End Sub

Серега, извини, но так он сработает только 1 раз.

А так, действительно, каждую минуту
Цитировать
Sub Auto_open() ' автозапуск при открытии файла
  Обновление
End Sub
Sub Обновление()
  Calculate
  Application.OnTime Now + TimeValue("00:01:00"), "Обновление"
End Sub


Serge 007>> Re: Макрос обновления страницы
2013-03-20 04:46 http://forum.msexcel.ru/index.php?action=profile;u=
Серега, извини, но так он сработает только 1 раз.
Ага. Поэтому в 22:23:18 я отредактировал пост и дал ссылку на рабочий пример :) 

Там ещё короче:
Sub Timer_()
Calculate
Application.OnTime Now + TimeValue("00:01:00"), "Timer_"
End Sub

ЗЫ Кстати, остановить макрос можно так

Serge 007>> Re: Удаление пробелов в столбце+перевод в другую валюту
2013-03-20 06:26 http://forum.msexcel.ru/index.php?action=profile;u=
Курсы валют из интернета он-лайн

zs>> Re: Суммирование последних пяти матчей с участием определенной команды
2013-03-20 07:39 http://forum.msexcel.ru/index.php?action=profile;u=
функция "сумма если от нескольких параметров", в том числе дата
5 последних дней функция =МАКС(А3:А1500)-5

Александр Супрун>> Re: Антиапостроф
2013-03-20 11:26 http://forum.msexcel.ru/index.php?action=profile;u=
Спасибо за ответ, исправляюсь и прикладываю к вопросу файлик. К сожалению все что вы посоветовали, как и моя процедура, работает только для целых чисел и отказывается преобразовывать числа с плавающей точкой.
Оказывается если во втором коде "преобразовать текст в число", если заменить точку на запятую...апостроф убирается после двойного применения макроса к выделенной ячейке (сначала запятая меняется в точку, а потом только после следующего применения точка меняется на запятую и данные превращаются в число).

edmar07>> Re: Макрос обновления страницы
2013-03-20 12:10 http://forum.msexcel.ru/index.php?action=profile;u=

ЗЫ Кстати, остановить макрос можно так
а меня  почему-то только на главную по ссылке переносит (

и парни, спасибо за участие, а то у меня задача глобальная, часть я знаю как сделать, часть нужно много читать, а вот до еще одной части  я не скоро еще смогу дойти ;)))


edmar07>> Re: Чему равна пустая ячейка?
2013-03-20 19:40 http://forum.msexcel.ru/index.php?action=profile;u=
тоже нужно было действия с пустой ячейкой и вот что оказалось...

пустая ячейка больше (тяжелее) цифр, но меньше (легче) букв  (и то относительно)

тут примерчик, кстати, може кто прояснит в чем "соль" ;)


чуть почитал... и разобрался)))

0mega>> Re: Чему равна пустая ячейка?
2013-03-20 20:30 http://forum.msexcel.ru/index.php?action=profile;u=
edmar07, здравствуйте

 первая ошибка заключается в том что неправильно записана формула в ячейке В7
=ЕСЛИ(И(A7<>$A18>=$B$3);A7-$D$3;"")
Двойное неравенство нельзя так записывать
Правильно так:
=ЕСЛИ(И(A7<>$A18;A7>=$B$3);A7-$D$3;"")


edmar07>> Re: Чему равна пустая ячейка?
2013-03-20 20:37 http://forum.msexcel.ru/index.php?action=profile;u=
edmar07, здравствуйте

 первая ошибка заключается в том что неправильно записана формула в ячейке В7
=ЕСЛИ(И(A7<>$A18>=$B$3);A7-$D$3;"")
Двойное неравенство нельзя так записывать
=ЕСЛИ(И(A7<>$A18;A7>=$B$3);A7-$D$3;"")

В7 - эт я не доглядел, точнее пробы всякие были и не доделал, сам прикол начинается в ячейках G7 и H7 когда начинаються сравнивания с пусто и как следствие вычитания из него, так как оно опять подходит под истину;)

0mega>> Re: Чему равна пустая ячейка?
2013-03-20 20:53 http://forum.msexcel.ru/index.php?action=profile;u=
сам прикол начинается в ячейках G7 и H7 когда начинаються сравнивания с пусто и как следствие вычитания из него, так как оно опять подходит под истину;)

Именно этот вопрос и задавался в стартовом топике


Всегда считал что пустая ячейка -это ноль.
Если написать формулу =2*А1, то в ответе будет 0
диаметрально противоположный результат получается если:
=МИН(F1;99)
В этом случае машина выбирает 99
 Если пустую ячейку приравнять к другой пустой ячейке , тогда результат "разворачивается "
И Александр объяснил эту позицию
При выполнении арифметических действий ПЯ преобразуется в ноль, при выполнении операций сравнения функциями агрегирования (например, см. справку для МАКС или МИН) - это текст






zs>> Re: Чему равна пустая ячейка?
2013-03-20 20:57 http://forum.msexcel.ru/index.php?action=profile;u=
"неуловимые" символы ;)

edmar07>> по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-20 20:58 http://forum.msexcel.ru/index.php?action=profile;u=
Всем привет еще раз!!!

Подскажите, как заставить таблицу понимать при вводе времени 18:00, что это 18:00 20.03.13, а не 18:00 00.01.1900?

0mega>> Re: Чему равна пустая ячейка?
2013-03-20 21:01 http://forum.msexcel.ru/index.php?action=profile;u=
еще один косяк:
Н22="">0

Дело в том что "" - это НЕ ПУСТО ! это ячейка занятфя значением ""
Правильно будет так:
Н22=AZ9999>0


edmar07>> Re: Чему равна пустая ячейка?
2013-03-20 21:06 http://forum.msexcel.ru/index.php?action=profile;u=
И Александр объяснил эту позицию
При выполнении арифметических действий ПЯ преобразуется в ноль, при выполнении операций сравнения функциями агрегирования (например, см. справку для МАКС или МИН) - это текст
а вот слово ТЕКСТ я и не заметил!!!! спс)))

zs>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-20 21:33 http://forum.msexcel.ru/index.php?action=profile;u=
Обычно над таблицей в правом углу ставится (в тыс.) (в руб.) или т.п. (z.B. =СЕГОДНЯ) и каждое значение времени будет привязано к текущей дате
Ч(А1)+Ч(А2)

_Boroda_>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-20 21:34 http://forum.msexcel.ru/index.php?action=profile;u=
А положите-ка файлик. С объяснялкой. Не ясно, зачем Вам это нужно. Точнее, есть несколько вариантов, зачем это может быть нужно и, соответственно, несколько вариантов решения.

edmar07>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-20 22:28 http://forum.msexcel.ru/index.php?action=profile;u=
А положите-ка файлик. С объяснялкой. Не ясно, зачем Вам это нужно. Точнее, есть несколько вариантов, зачем это может быть нужно и, соответственно, несколько вариантов решения.
Файла нет под рукой, я с мобил

Мысль такова:
- на одной странице все данные времени только за сегодня;
- чем больше данных вводят тем больше ошибок
- ну и меньше времени на ввод данных.

edmar07>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-20 22:58 http://forum.msexcel.ru/index.php?action=profile;u=
Обычно над таблицей в правом углу ставится (в тыс.) (в руб.) или т.п. (z.B. =СЕГОДНЯ) и каждое значение времени будет привязано к текущей дате
Ч(А1)+Ч(А2)
Сегодня - не подходит, введенное 20-го должно им и остаться, а 21-го - 21!!

Евгений Гиннер>> Re: Удаление пробелов в столбце+перевод в другую валюту
2013-03-21 08:04 http://forum.msexcel.ru/index.php?action=profile;u=
Всем спасибо огромнейшее!
Все получилось, все работает! :D

С макросами действительно не дружу, но теперь буду знакомиться активно.
И вообще, благодаря этому форуму теперь активно буду разбираться в Excel.
Спасибо вам всем за это)

KuklP>> Re: Антиапостроф
2013-03-21 11:08 http://forum.msexcel.ru/index.php?action=profile;u=
У меня отлично работает так:
Sub www()
    Dim a
    a = Selection
    Selection = a
    Selection.Replace Mid(1 / 2, 2, 1), ".", 2
End Sub


Александр Супрун>> Re: Антиапостроф
2013-03-21 12:29 http://forum.msexcel.ru/index.php?action=profile;u=
Все то же самое - первое применение макроса - запятая меняется на точку, и формула значение естественно не считает, так как системный разделитель запятая, а второй раз применение макроса к той же ячейке - точка становиться запятой и все пучком. Что за чудеса. Может сделать цикл,чтобы макрос выполнялся 2 раза?

KuklP>> Re: Антиапостроф
2013-03-21 12:58 http://forum.msexcel.ru/index.php?action=profile;u=
Попробуйте еще так:
Sub www()
    Dim a, i
    a = Selection
    For i = 1 To UBound(a, 2)
        If Not IsEmpty(a(1, i)) Then a(1, i) = CSng(a(1, i))
    Next
    Selection = a
End Sub
Или:
Sub www()
    Dim a, i
    a = Selection
    For i = 1 To UBound(a, 2)
        If Len(a(1, i)) Then a(1, i) = Val(Replace(a(1, i), ",", "."))
    Next
    Selection = a
End Sub
У меня работает вместо:
        If Len(a(1, i)) Then a(1, i) = Val(Replace(a(1, i), ",", "."))просто:
        a(1, i) = Replace(a(1, i), ",", ".")Как у Вас - не знаю. :)


KuklP>> Re: Занятый файл
2013-03-21 13:22 http://forum.msexcel.ru/index.php?action=profile;u=
Чем помочь? Текстовые файлы не предназначены для работы в совместном доступе. Открывая файл, Вы просто считываете его в память. Отредактировав, сохраняете его на место предыдущего. Если оба макроса выполняются из одной книги, объявите публичную переменную-флаг и при запуске второго макроса проверяйте ее состояние. Если макросы из разных книг, то можно создавать файл-флаг в его(файла текста) папке и удалять при закрытии. А вторым макросом проверять наличие файла при помощи Dir.

Александр Супрун>> Re: Антиапостроф
2013-03-21 15:20 http://forum.msexcel.ru/index.php?action=profile;u=
Процедура почему-то останавливается на
"For i = 1 To UBound(a, 2)"  :-[

KuklP>> Re: Антиапостроф
2013-03-21 15:33 http://forum.msexcel.ru/index.php?action=profile;u=
Да ну!  Значит Вы либо не выделили диапазон, либо пример корявый, либо чего-то не договариваете. У меня все отлично работает начиная с первого кода.

Александр Супрун>> Re: Антиапостроф
2013-03-21 16:13 http://forum.msexcel.ru/index.php?action=profile;u=
Кажется разобрался! Все дело в выделенных ячейках. В общем тут такое: если
1) выделена одна ячейка, процедура за синей кнопкой не работает
2) выделены данные в строку - работает :)
3) выделены данные в столбец (введите что-либо ниже уже имеющихся данных и выделите их, убирает апостроф только в первой ячейке)
http://youtu.be/ov2h0SYknOw

malen>> Re: Автозаполнение столбца, при условиях..
2013-03-21 16:58 http://forum.msexcel.ru/index.php?action=profile;u=
спасибо за внимание, и помощь..
С другой стороны благодаря её отсутствию узнал некоторые функции, особенно устройство работы с массивами. Люблю их с программирования.
На четвертый день получилось то что нужно.

edmar07>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-21 19:07 http://forum.msexcel.ru/index.php?action=profile;u=
А положите-ка файлик. С объяснялкой. Не ясно, зачем Вам это нужно. Точнее, есть несколько вариантов, зачем это может быть нужно и, соответственно, несколько вариантов решения.

вот и файлик с пояснением ))

_Boroda_>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-21 19:34 http://forum.msexcel.ru/index.php?action=profile;u=
Можно так:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If [A1] = 1111 Then Exit Sub
If Target < 1 And Target > 0 Then
    Target = Target + Date
    Target.NumberFormat = "h:mm;@"
End If
End Sub
Отключается вводом в ячейку А1 четырех единиц 1111 (при желании можно поменять)

KuklP>> Re: Антиапостроф
2013-03-21 21:24 http://forum.msexcel.ru/index.php?action=profile;u=
Какой Вы пример выложили, такой я код и написал :)
Sub www()
    Dim a, i&, j&
    If Selection.Count = 1 Then MsgBox "Invalid selection!": Exit Sub
    a = Selection
        For i = 1 To UBound(a)
            For j = 1 To UBound(a, 2)
                If Len(a(i, j)) Then a(i, j) = Val(Replace(a(i, j), ",", "."))
            Next j, i
    Selection = a
End Sub
Больше переделывать не буду.

Самадова Камилат>> Разделитель времени
2013-03-22 00:56 http://forum.msexcel.ru/index.php?action=profile;u=
Здравствуйте. Нужна помощь, можно ли Excel вводить числа, чтобы автоматически вставлялись разделители, когда я имею дело с форматом времени hh:mm?

ar4_owl>> Слияние двух таблиц
2013-03-22 10:12 http://forum.msexcel.ru/index.php?action=profile;u=
Здраствуйте! Есть два файла excel. В первом - таблица, используется как справочник организаций. Там есть столбцы  название, ИНН, контакты, и прочее. И один столбец содержит уникальные идентификаторы (число) для каждой организации. То есть в столбце повторений нет. Во втором файле таблица содержит записи к организациям. И есть стобец, по которому можно определить, к какой организации относится эта запись - столбец содержит число - идентификатор из первого файла. то есть смотрим номер, открываем справочник, узнаем что за организация.

Можно ли, как-нибудь добавить в файл с записями, к каждой строке название организации из файла-справочника? по этому числу-идентификатору

KuklP>> Re: Слияние двух таблиц
2013-03-22 10:47 http://forum.msexcel.ru/index.php?action=profile;u=
Читайте справку по ВПР.

cheshiki1>> Re: Слияние двух таблиц
2013-03-22 11:22 http://forum.msexcel.ru/index.php?action=profile;u=
ВПР подойдет только если искомое значение в первом столбце по отношению к остальным, а судя по описанию это не факт.
вариант =ИНДЕКС(таблица;ПОИСКПОЗ(.....);ПОИСКПОЗ(.....))


Александр Супрун>> Re: Антиапостроф
2013-03-22 11:56 http://forum.msexcel.ru/index.php?action=profile;u=
Спасибо большое за уделенное время. Вы мне очень помогли. Но никак все-таки не могу понять, чтобы не только в выделенной области удалять апостроф, но и в одиночно стоящей ячейке?

Dmitr68>> Re: Разделитель времени
2013-03-22 12:10 http://forum.msexcel.ru/index.php?action=profile;u=
Здравствуйте.
посмотрите здесь
http://www.planetaexcel.ru/techniques/6/51/

zs>> Re: Разделитель времени
2013-03-22 13:12 http://forum.msexcel.ru/index.php?action=profile;u=
формулой можно преобразовать, если ДЛСТР=4, = два левых&:&два правых знака

edmar07>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-22 13:46 http://forum.msexcel.ru/index.php?action=profile;u=
Можно так:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If [A1] = 1111 Then Exit Sub
If Target < 1 And Target > 0 Then
    Target = Target + Date
    Target.NumberFormat = "h:mm;@"
End If
End Sub
Отключается вводом в ячейку А1 четырех единиц 1111 (при желании можно поменять)
спасибо, все супер!!! плюсик поставил))

но как всегда выплыл следующий "камень"

теперь нужно вот что:
- есть начало операции и конец, если все в одни сутки, то все хорошо!!
- но если операция заканчивается на следующий день... !?!?
- можно ли сделать, чтоб проверить ячейку рядом (слева) если время начала больше - то прибавить 1 день
- с учетом что там будет вводится не одна такая операция, а целый каскад 

пример прикрутил, кстати, там макрос, который из 4 цифр делает дату, как бы его переделать чтоб он еще любой разделитель между 4 цифрами в : переделывал.
 
спасибо сразу

edmar07>> Re: Разделитель времени
2013-03-22 14:07 http://forum.msexcel.ru/index.php?action=profile;u=
формулой можно преобразовать, если ДЛСТР=4, = два левых&:&два правых знака

а как это в формуле =если( ДЛСТР(A1)=4; два левых&:&два правых знака;)?

cheshiki1>> Re: Разделитель времени
2013-03-22 14:58 http://forum.msexcel.ru/index.php?action=profile;u=
edmar07 =ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);"")

Михаил С.>> Re: Разделитель времени
2013-03-22 14:59 http://forum.msexcel.ru/index.php?action=profile;u=
В А1 время в формате 0232, в другой ячейке формула =ЗАМЕНИТЬ(A1;3;0;":"), получим 02:32; если эти часы потом  нужны для расчета, то =--ЗАМЕНИТЬ(A1;3;0;":")формат ячейки - время.
 
UP.
В общем случае =--ЗАМЕНИТЬ(A1;ДЛСТР(A1)-1;0;":")

zs>> Re: Разделитель времени
2013-03-22 15:21 http://forum.msexcel.ru/index.php?action=profile;u=
=ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);"")>=--ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);A1)

KuklP>> Re: Занятый файл
2013-03-22 16:42 http://forum.msexcel.ru/index.php?action=profile;u=
Вы писали:
ситуацию, когда один макрос открыл текстовый файл для записи и копошится там
Теперь:
книги открыт общий доступ на редактирование. Книга будет открываться
Так текстовый файл, или книга? Вы уж определитесь.
Подскажите, как сделать публичную переменную?
В общем модуле объявить:
public flag as booleanНо в Вашем случае, только вариант с доп. файлом.

Михаил С.>> Re: Последовательное сравнение значений и подстановка признака
2013-03-22 17:24 http://forum.msexcel.ru/index.php?action=profile;u=
Если чуть изменить таблицу на листе "Оценка", то простая формула в файле

zs>> Re: Последовательное сравнение значений и подстановка признака
2013-03-22 18:30 http://forum.msexcel.ru/index.php?action=profile;u=
не проще сразу сравнить fact оценку с max оценкой и сделать вывод

d7d1cd>> Re: Занятый файл
2013-03-22 19:26 http://forum.msexcel.ru/index.php?action=profile;u=
А почему только вариант с файлом?

KuklP>> Re: Занятый файл
2013-03-22 20:54 http://forum.msexcel.ru/index.php?action=profile;u=
Потому, что Вашу переменную будет видеть только Ваш экземпляр Экса. И только тот, в котором она создана. Другие экземпляры, даже на Вашей машине, ее не увидят.
P.S. Я еще раз Вам советую, начните с чего-нибудь попроще. :)

Самадова Камилат>> Re: Разделитель времени
2013-03-22 21:45 http://forum.msexcel.ru/index.php?action=profile;u=
Я вообще ничего не понимаю, куда надо вставлять "=ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);"")>=--ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);A1)". Мне нужно составить реестр, с указанием времени. Например я пишу 2230, а нужно чтобы он автоматом ставил разделитель 22:30.

Dmitr68>> Re: Разделитель времени
2013-03-23 03:08 http://forum.msexcel.ru/index.php?action=profile;u=
Если Вас не устраивает макрос, ссылку на который я давал, то в параметрах автозамены замените "++" на ":".
Тогда время будете вводить так 22++30
У меня так сделано и мне удобно, ввод на правой цифровой клавиатуре одной рукой.

Dmitr68>> Re: Последовательное сравнение значений и подстановка признака
2013-03-23 03:54 http://forum.msexcel.ru/index.php?action=profile;u=
Можно и не менять таблицу:

d7d1cd>> Re: Занятый файл
2013-03-23 07:01 http://forum.msexcel.ru/index.php?action=profile;u=
Совет начать с чего нибудь попроще, конечно, правильный. Но когда ты на С++ написал большую и, главное, работающую программу, то стыдно начинать с простого. Да, кроме того, времени нет особо. Программа нужна еще вчера. Спасибо за помощь!

zs>> Re: Разделитель времени
2013-03-23 09:18 http://forum.msexcel.ru/index.php?action=profile;u=
Я вообще ничего не понимаю, куда надо вставлять "=ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);"")>=--ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);A1)". Мне нужно составить реестр, с указанием времени. Например я пишу 2230, а нужно чтобы он автоматом ставил разделитель 22:30.
"=ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);"")лучше=--ЕСЛИ(ДЛСТР(A1)=4;ЛЕВСИМВ(A1;2)&":"&ПРАВСИМВ(A1;2);A1)"
вам лучше воспользоваться макросом :)

Олег Леонидович>> Помогите найти первое отсутствующее число диапазона.
2013-03-23 19:08 http://forum.msexcel.ru/index.php?action=profile;u=
Знатоки, помогите пожалуйста найти первое отсутствующее порядковое число в диапазоне.
Пример:
Пронумерованы первые 100 ячеек 1 столбца. Пронумерованы без определённого порядка, но строго в интервале от 1 до 100. Между 1 и 100 отсутствуют значения 3, 7, 98 (и т.д). Первым порядковым отсутствующим значением будет 3 (не пустая ячейка, а именно отсутствует значение 3). Как можно получить его макросом?


Просьба за безграмотность сильно ногами не пинать...  :)

Poltava>> Re: Помогите найти первое отсутствующее число диапазона.
2013-03-24 00:25 http://forum.msexcel.ru/index.php?action=profile;u=
Ногами пинать не будем но правила не зря писаны! Прир как правило значительно упрощает жизнь! Прикрепите файл с примером тогда вам намног быстрее ответят

ikki>> Re: Помогите найти первое отсутствующее число диапазона.
2013-03-24 05:29 http://forum.msexcel.ru/index.php?action=profile;u=
при наличии отсутствия файла буйно фантазирую  :D
sub t()
  dim arr%(1 to 100), a, i%, n%, b, j%
  a=[a1:a100].value: n=100
  for i=1 to 100
    if not isempty(a(i,1)) then arr(a(i,1))=1: n=n-1
  next
  if n>0 then
    redim b(1 to n, 1 to 1)
    for i=1 to 100
      if arr(i)=0 then j=j+1: b(j,1)=i
    next
    [b1].resize(n).value=b
  end if
end sub
 

ikki>> Re: Расчет количества клиентов с продвижением продукции
2013-03-24 06:12 http://forum.msexcel.ru/index.php?action=profile;u=
прошу прощения, не заметил добавку вовремя  :-\
если ещё актуально...

принцип запроса - в прикреплении, но я не стал заморачиваться с вашим форматом недель.
вообще - советовал бы поменять на другой (но не на тот, что в примере! вам нужно ещё года не потерять)

KuklP>> Re: Помогите найти первое отсутствующее число диапазона.
2013-03-24 07:55 http://forum.msexcel.ru/index.php?action=profile;u=
найти первое отсутствующее порядковое число
  :P
Public Sub MinVal()
    Dim i&, n&
    On Error Resume Next
    For i = 1 To 100
        n = Application.Match(i, [a1:a100], 0)
        If Err Then Err.Clear: MsgBox i: Exit Sub
    Next
End Sub


Лилия Гиматдинова>> кнопка &quot;обновить всё&quot;
2013-03-24 09:03 http://forum.msexcel.ru/index.php?action=profile;u=
Здравствуйте.

при автоматическом обновлении данных файл несколько секунд "думает-тормозит" и это происходит при каждом открытии файла - неудобно. Источник данных -  обычные ссылки на ячейки других книг.
отключаю автоматическое обновление - потом пытаюсь обновить вручную "обновить всё" - но результата нет, не обновляется.
 Обновляется только через "изменить связи - обновить", что выглядит как-то коряво.
в чём может быть причина?

спасибо за советы.

Олег Леонидович>> Re: Помогите найти первое отсутствующее число диапазона.
2013-03-24 12:29 http://forum.msexcel.ru/index.php?action=profile;u=
Прир как правило значительно упрощает жизнь!

Согласен... только пример то, 1-й столбец с цифрами по порядку и всё...

KuklP спасибо большое! То что надо!  :)

KuklP>> Re: кнопка &quot;обновить всё&quot;
2013-03-24 14:52 http://forum.msexcel.ru/index.php?action=profile;u=
А просто F9 не помогает? Да и несколько секунд при открытии это не беда. Антивирус может тормозить.

Алексей Садченко>> Изменение рисунка в зависимости от условия в Excel
2013-03-24 17:28 http://forum.msexcel.ru/index.php?action=profile;u=
Доброго времени суток!
Задача такая:
Есть ячейка, например А1 (на листе1). И есть рисунки (на листе 2), например "Прямоугольник 1" и "Овал 2".
Возможно ли сделать так, чтобы при вводе в А1 числа "1", на листе1 отображался "Прямоугольник1", а при вводе "2" в А1, отображался "Овал2". Если такое возможно расскажите как, заранее благодарен.

KuklP>> Re: Помогите найти первое отсутствующее число диапазона.
2013-03-24 17:56 http://forum.msexcel.ru/index.php?action=profile;u=
Согласен... только пример то, 1-й столбец с цифрами по порядку и всё...
Не совсем так. Никто из нас не знал например, куда Вам нужно вывести результат, как на самом деле расположены данные. Лучше всегда пример. На будущее учтите.

exceleved>> Re: Помогите найти первое отсутствующее число диапазона.
2013-03-24 18:06 http://forum.msexcel.ru/index.php?action=profile;u=
Можно и не макросом - [abbr=Вводится через Ctrl+Shift+Enter]формула массива[/abbr]

=ПОИСКПОЗ(ИСТИНА;ЕНД(ПОИСКПОЗ(СТРОКА(1:100);A1:A100;));)

exceleved>> Re: Изменение рисунка в зависимости от условия в Excel
2013-03-24 18:28 http://forum.msexcel.ru/index.php?action=profile;u=
Почитайте http://planetaexcel.ru/techniques/1/39/

Олег Леонидович>> Re: Помогите найти первое отсутствующее число диапазона.
2013-03-24 20:19 http://forum.msexcel.ru/index.php?action=profile;u=
Можно и не макросом

Формулой я и сам могу.  :)
Нужен был именно макрос...

exceleved>> Re: Помогите найти первое отсутствующее число диапазона.
2013-03-24 21:36 http://forum.msexcel.ru/index.php?action=profile;u=
Формулой я и сам могу
Используйте формулы в макросе!

Sub bb()
Dim x
x = [MATCH(TRUE,ISNA(MATCH(ROW(1:100),A1:A100,)),)]
MsgBox IIf(IsError(x), "Все номера есть", x)
End Sub


KuklP>> Re: кнопка &quot;обновить всё&quot;
2013-03-25 07:29 http://forum.msexcel.ru/index.php?action=profile;u=
Кросс: http://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=1&TID=46912

Che79>> макрос подсчета значений в первой пустой ячейке таблицы
2013-03-25 13:21 http://forum.msexcel.ru/index.php?action=profile;u=
добрый день, уважаемые форумчане!
Помогите, пжл, с макросом.
Пример и описание во вложенном файле.
По сути - имеем книгу с несколькими листами таблиц определенного формата.
Хорошо бы автоматизировать процесс по поиску строки , на которой таблица заканчивается и вписать в нее формулу подсчета значений в каждом из столбцов таблицы. Это касается всех листов книги. Вручную, даже работая на нескольких листах одновременно, это занимает немало времени + высока вероятность ошибки.
Помогите, очень прошу, сам над макросом подвис)

KuklP>> Re: макрос подсчета значений в первой пустой ячейке таблицы
2013-03-25 14:09 http://forum.msexcel.ru/index.php?action=profile;u=
Для Вашего примера:
Sub www()
    Dim r&, sh As Worksheet
    For Each sh In ThisWorkbook.Worksheets
        r = sh.Cells(Rows.Count, 40).End(xlUp).Row
        sh.Cells(r + 1, 6).FormulaR1C1 = _
        "=COUNTIF(R11C:R" & r & "C,R2C5)*LEFT(R2C5,1)+COUNTIF(R11C:R" & r & "C,R3C5)*LEFT(R3C5,1)"
        sh.Cells(r + 1, 6).AutoFill sh.Range("F" & r + 1 & ":AJ" & r + 1)
    sh.Range(r + 2 & ":" & r + 20).Delete
    Next
End Sub

Вместо 40 столбца(AN) можете подставить тот, к-рый заполняется до последней строки.


Che79>> Re: макрос подсчета значений в первой пустой ячейке таблицы
2013-03-25 14:54 http://forum.msexcel.ru/index.php?action=profile;u=
спасибо огромное, человеческое!! очень помогли!

KuklP>> Re: макрос подсчета значений в первой пустой ячейке таблицы
2013-03-25 15:13 http://forum.msexcel.ru/index.php?action=profile;u=
Кросс: http://www.excelworld.ru/forum/2-4168-1
Che79, знал бы о кроссе - не помогал бы.

_Boroda_>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-25 16:01 http://forum.msexcel.ru/index.php?action=profile;u=
На 1 день больше
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If [A1] = 1111 Then Exit Sub
Application.ScreenUpdating = 0
If Target < 1 And Target > 0 Then
    If Target.Column > 1 Then
        If Target.Offset(, -1) > Target Then s_ = 1
    End If
    Target = Target + Date + s_
    Target.NumberFormat = "h:mm;@"
End If
Application.ScreenUpdating = 1
End Sub

А замену вам точно нужно? Стремно,  можно и нарваться

edmar07>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-25 16:49 http://forum.msexcel.ru/index.php?action=profile;u=

А замену вам точно нужно? Стремно,  можно и нарваться

нужно, как вариант!!! спасибо!
пока все в кучу леплю, тут у меня много всяких вопросов, как только что-то сделаю сразу еще один или два вылазят!!!
вот еще темку наваял


_Boroda_>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-25 16:56 http://forum.msexcel.ru/index.php?action=profile;u=
Ну, если так нужно, держите

edmar07>> отображение результата проверки массива колонки!!! в строке
2013-03-25 17:16 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день.
Можно ли результат проверки массива столбца выводить в строку
при условиях:
- если в столбце В = данные 1 (может быть несколько), то выводится в строке 10
- если в столбце В = данные 2 (может быть несколько), то выводится в строке 11 и т.д.
- если данные по В по С и по Е прошли проверку, то в строке 10 ставится 1, а если совпали участки (наложились) еще плюс 1, сколько совпадений такая и цифра.

может сумбурно... в примере еще и стрелок натыкал)))


edmar07>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-25 17:23 http://forum.msexcel.ru/index.php?action=profile;u=
Ну, если так нужно, держите

он прибавляет день даже если время попадает в одни сутки!!

ShAM>> Re: отображение результата проверки массива колонки!!! в строке
2013-03-25 22:01 http://forum.msexcel.ru/index.php?action=profile;u=
Как понял.


_Boroda_>> Re: по вводу времени формат в СЕГОДНЯ - формат или формула?
2013-03-26 09:17 http://forum.msexcel.ru/index.php?action=profile;u=
Ну да, не учел там ...
Сейчас вроде нормально.
Кстати, макрос, который там был, я почти не трогал, хотя он мне и не нравится. Просто накидал заплаток и переделок.


На форуме Вы можете получить совет по любым вопросам работы в Microsoft Excel.

Добро пожаловать на форум!


В избранное