Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
1 / 1 / 0
Регистрация: 27.01.2015
Сообщений: 35

Ошибка поиска значения на странице Excel

30.01.2015, 09:24. Показов 4314. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите делитанту, как узнать есть ли такое значение в колонке, если есть то присвоить какому нить флагу значение, к примеру 1
Я вот попробовал

Visual Basic
1
2
3
4
Dim nalichie_kypli As Variant
If Worksheets("Temp").Range("H:H").Find("объем по договорам купли-продажи") Then
nalichie_kypli = 1
End If
но что то на мое изобретение ругается, как поправить? Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.01.2015, 09:24
Ответы с готовыми решениями:

Поиск значения на странице Excel
подскажите, можно указать элемент в ячейке(например если там написано 'Р27'), затем присвоить ему имя переменной X, а затем на другом листе...

Вывод результатов поиска по БД на странице поиска
Добрый день. Я начинаю изучать PHP и у меня возник вопрос. Я создал страницу поиска по БД и вывода результатов. С помощью метода post...

Ошибка поиск значения в столбце макросом в excel
Подскажите делитанту, как узнать есть ли такое значение в колонке, если есть то присвоить какому нить флагу значение, к примеру 1 Я вот...

4
6082 / 1327 / 195
Регистрация: 12.12.2012
Сообщений: 1,023
30.01.2015, 10:33
Здравствуйте, UraN32Rus,
Функция Find объекта Range библиотеки Excel возвращает объект типа Range или константу Nothing, если значение не найдено.

Объект типа Range не приводим к типу Boolean и не может использоваться в условных операторах. Поэтому VBA и ругается...

Можно проверить, не возвращена ли константа Nothing. Если не возвращена, значит, искомое значение найдено.


Visual Basic
1
2
3
    If Not Worksheets("Temp").Range("H:H").Find("îáúåì ïî äîãîâîðàì êóïëè-ïðîäàæè") Is Nothing Then
        nalichie_kypli = 1
    End If
С уважением,
Аксима
P.S. А у вас, оказывается, кросспост . Обратите, пожалуйста, внимание, что дублирование своей темы запрещено правилами форума...
1
1 / 1 / 0
Регистрация: 27.01.2015
Сообщений: 35
31.01.2015, 19:27  [ТС]
Спасибо большое. А за дублирование темы извините ошибся,думал первая не создалась.

Добавлено через 10 минут
Извините может еще подскажите, столкнулся с такой проблемой. У меня выгружаются в excel программно два листа, в каждом в аналогичных колонках вбиты договора такого формата 1165-00, 1166-00,8562-00 ну и так далее, я сравниваю ячейки договоров между листами и на некоторых ячейках макрос считает их разными, хотя они абсолютно одинаковые 1165-00 и 1165-00 разницы никакой? формат тоже одинаковый вроде и что интересно когда на втором листе я договор переписываю руками и запускаю макрос все нормально. Не пойму что после ручного набора меняется? Голову уже сломал.

Добавлено через 6 минут
код сравнения добавить забыл
Visual Basic
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
Sub sravnenie()
Dim finalRow_ceti, finalRow, x_current, x_ceti, k As Variant
 
finalRow = Cells(Rows.Count, 1).End(xlUp).Row
finalRow_ceti = Workbooks("Ñåòè.xls").ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
k = 0
counter_null_range = 0
For k = finalRow_ceti - 1 To 8 Step -1
If Workbooks("Сети.xls").ActiveSheet.Range("A" & k) <> "" Then
Exit For
End If
counter_null_range = counter_null_range + 1
Next
 
ActiveSheet.Columns("A:A").NumberFormat = "@"
Workbooks("Сети.xls").ActiveSheet.Columns("A:A").NumberFormat = "@"
 
Workbooks("Сети.xls").ActiveSheet.Cells(108, 1).Value = counter_null_range
Set CompareRange = Range("A8:A" & finalRow - 2)
Set CompareRange_ceti = Workbooks("Сети.xls").ActiveSheet.Range("A8:A" & finalRow_ceti - counter_null_range - 1)
 
 
For Each x_current In CompareRange
For Each x_ceti In CompareRange_ceti
If x_current = x_ceti Then
If x_current.Offset(0, 0) = x_ceti.Offset(0, 0) Then
x_ceti.Offset(0, 14) = "sadf"
End If
End If
Next x_ceti
Next x_current
 
End Sub
0
4089 / 1469 / 401
Регистрация: 07.08.2013
Сообщений: 3,671
01.02.2015, 05:37
1. есть у excel такой прикол
например был тип данных общий и excel автоматом считал что в данной ячейке находятся цифры
далее вам понадобилось перевести тип в текст, кликаете по ячейке выбираете свойства и переводите в текстовый формат. т.е. формат переводите после того как ячейку была внесена инфа и вот тут возникает не приятная ситуация а для введенной информации формат не перевелся.
выход - в коде данные принудительно приводить к нужному формату для этого есть много функций начинаются они с буквы C (CDate, Cstr, Clng, Cdbl и т.д.)
2. данные все-таки разные может затесаться пробел (или еще какой невидимый символ) либо спереди либо сзади, а может и в серединку
выход - использовать код для приведения данных к одному виду
например данный код в текстовой переменной txt убирает задвоение пробелов и оставляет только одинарные
Visual Basic
1
2
3
do while instr(1,txt,"  ")>0
txt=replace(txt,"  "," ")
loop
кроме того можно(нужно)использовать функцию Trim - она режет пробелы спереди и сзади
0
1 / 1 / 0
Регистрация: 27.01.2015
Сообщений: 35
01.02.2015, 11:10  [ТС]
Спасибо

Добавлено через 8 минут
Извините а не подскажете такую проблему, как удалить из ячеек столбца A:A листа другой уже открытой книги все пробелы которые встречаются. Просто они там вообще не нужны. Буду очень признателен. Спасибо.

Добавлено через 1 минуту
А дело было действительно в пробелах в конце, просто они почему то встречались только у немногих строк и трудно было заметить. Учту на будущее.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.02.2015, 11:10
Помогаю со студенческими работами здесь

Составить процедуры поиска мин и номеров минимального значения и поиска вектора v
Дан массив. составить процедуры 1. поиска мин и номеров минимального значения 2.поиск вектора v, такого что если сумма imin +jmin...

Написать программу поиска заданного значения в отсортированном массиве методом двоичного поиска
Помогите с программой, вот задание: Написать программу поиска заданного значения в отсортированном массиве методом двоичного поиска ...

Возвращение к странице поиска
Добрый день. Такой вопрос: сделал поиск, потом переход на искомую страницу, но вот если попытаться вернуться на страницу поиска выдает...

Окошко поиска по странице
подскажите пожалуйста как наладить на сайте поисковое окошко. т.е. чтобы поиск был не только по сайту но и по странице. движок сайта...

Поле поиска текста на странице
Здравствуйте. С наступившим всех новым годом:drink:! Пожалуйста подскажите, я в JavaScript профаня:wall:. Поставил себе на сайт вот такой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru