Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Поиск даты методом Find - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Поиск даты методом Find (Макросы/Sub)
Поиск даты методом Find
китин Дата: Четверг, 26.04.2018, 14:22 | Сообщение № 1
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Всем доброго времени суток уважаемые !!! Не знаю, но скорее всего затупил не по детски :D %) :'(
Пытаюсь в рамках одного проекта найти методом Find в строке с формулами найти сегодняшнюю дату. Накропал

не хочет и всё тут. выдаёт Nothing и, соответственно далее выкидывает в дебагер. %)
и что у меня там не так?
К сообщению приложен файл: Find_.xlsm (21.8 Kb)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852


Сообщение отредактировал китин - Четверг, 26.04.2018, 14:23
 
Ответить
СообщениеВсем доброго времени суток уважаемые !!! Не знаю, но скорее всего затупил не по детски :D %) :'(
Пытаюсь в рамках одного проекта найти методом Find в строке с формулами найти сегодняшнюю дату. Накропал

не хочет и всё тут. выдаёт Nothing и, соответственно далее выкидывает в дебагер. %)
и что у меня там не так?

Автор - китин
Дата добавления - 26.04.2018 в 14:22
Karataev Дата: Четверг, 26.04.2018, 14:54 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

Excel
При поиске даты два условия:
1) Поиск даты осуществляется по тому, как дата отображается в ячейке.
2) Find видит даты в строке 10 с учетом английского языка в региональных настройках.
В Вашем случае нужно искать не целиком дату "26.04.2018", а только день и месяц и в том формате, как их видит "Find":
26-Apr.
Чтобы разобраться в ситуации, измените в региональных настройках язык на английский (США).
Решения пока не знаю, как работать в режиме русского языка. Надо переводить название месяца с русского на английский.

Вот так будет находиться:


Сообщение отредактировал Karataev - Четверг, 26.04.2018, 14:57
 
Ответить
СообщениеПри поиске даты два условия:
1) Поиск даты осуществляется по тому, как дата отображается в ячейке.
2) Find видит даты в строке 10 с учетом английского языка в региональных настройках.
В Вашем случае нужно искать не целиком дату "26.04.2018", а только день и месяц и в том формате, как их видит "Find":
26-Apr.
Чтобы разобраться в ситуации, измените в региональных настройках язык на английский (США).
Решения пока не знаю, как работать в режиме русского языка. Надо переводить название месяца с русского на английский.

Вот так будет находиться:

Автор - Karataev
Дата добавления - 26.04.2018 в 14:54
китин Дата: Четверг, 26.04.2018, 15:14 | Сообщение № 3
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Да в том и дело, что в качестве criteria2 мне нужна именно Date, то есть
Код
=СЕГОДНЯ()
я уже и с[vba]
Код
Format(Date,"dd-mmm")
[/vba] и с [vba]
Код
FormatNumber
[/vba] пробовал : фигуньки >(


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеДа в том и дело, что в качестве criteria2 мне нужна именно Date, то есть
Код
=СЕГОДНЯ()
я уже и с[vba]
Код
Format(Date,"dd-mmm")
[/vba] и с [vba]
Код
FormatNumber
[/vba] пробовал : фигуньки >(

Автор - китин
Дата добавления - 26.04.2018 в 15:14
Karataev Дата: Четверг, 26.04.2018, 15:37 | Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

Excel
Функция "Format" не изменяет русский текст на английский, поэтому он Вам не подойдет. В Вашем случае нужно именно указывать "apr".
Вот так работает:
[vba]
Код
criteria2 = WorksheetFunction.text(Date, "d-mmm")
[/vba]


Сообщение отредактировал Karataev - Четверг, 26.04.2018, 15:44
 
Ответить
СообщениеФункция "Format" не изменяет русский текст на английский, поэтому он Вам не подойдет. В Вашем случае нужно именно указывать "apr".
Вот так работает:
[vba]
Код
criteria2 = WorksheetFunction.text(Date, "d-mmm")
[/vba]

Автор - Karataev
Дата добавления - 26.04.2018 в 15:37
_Boroda_ Дата: Четверг, 26.04.2018, 16:50 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Игорь, а зачем извращаться-то? Вот так не проще
[vba]
Код
aaa = WorksheetFunction.Match(CLng(Date), Rows(10), 0)
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеИгорь, а зачем извращаться-то? Вот так не проще
[vba]
Код
aaa = WorksheetFunction.Match(CLng(Date), Rows(10), 0)
[/vba]

Автор - _Boroda_
Дата добавления - 26.04.2018 в 16:50
bmv98rus Дата: Четверг, 26.04.2018, 21:21 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016
китин, вдруг поможет https://www.planetaexcel.ru/forum....e738733
ZVI как обычно на высоте.


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщениекитин, вдруг поможет https://www.planetaexcel.ru/forum....e738733
ZVI как обычно на высоте.

Автор - bmv98rus
Дата добавления - 26.04.2018 в 21:21
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Поиск даты методом Find (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!