Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 17.08.2008, 11:46   #1
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию Подсчитать количества знака в числе

Есть столбец(А2:А1350) с 8-ми разрядными числами.
Как выполнить условие:
Если в этом столбце попадется число <> 8-ми разрядам, то выдать сообщение о количестве таких чисел и установить курсор на этом(первом) числе?
valerij вне форума
Старый 17.08.2008, 12:08   #2
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

В простейшем случае, количество знаков можно определить так:
Код:
Sub test()
Dim iVal As Long
Dim iCol As Long
iVal = Range("A1").Value
iCol = Len(iVal) 'количество знаков
End Sub
ну, а теперь можно организовывать цикл, проверку и т.д.
(неплохо бы еще сделать проверку на числовые данные)
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума
Старый 17.08.2008, 12:37   #3
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от VictorM Посмотреть сообщение
В простейшем случае, количество знаков можно определить так:
Чето не то, MsgBox iCol, показывает, 4, а не 8
valerij вне форума
Старый 17.08.2008, 12:49   #4
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

напишите так:
Код:
Sub test()
Dim iVal As String
Dim iCol As Long
iVal = Range("A1").Value
iCol = Len(iVal) 'количество знаков
End Sub
теперь 8
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума
Старый 17.08.2008, 13:21   #5
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от VictorM Посмотреть сообщение
напишите так
Виктор!
"Нить" ухватил, Спасибо
valerij вне форума
Старый 17.08.2008, 16:52   #6
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Вот так, подправил, учитывет и нули
Код:
For oSt = 2 To 1378
iVal = Cells(oSt, 1).Value
If Len(iVal) = 0 Then GoTo 1
If Len(iVal) <> 8 Then MsgBox "НЕ ПРАВИЛЬНЫЙ ФОРМАТ НАКЛАДНЫХ": Exit For
1:
Next
If oSt >= 1378 Then oSt = 2
Cells(oSt, 1).Select
ActiveWindow.SmallScroll Down:=oSt - 13
End Sub

Последний раз редактировалось valerij; 17.08.2008 в 17:58.
valerij вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
продолжительность жизни зависит от знака зодиака Hallo Свободное общение 27 28.02.2014 15:34
Как округлять числа до целых и как оставить два знака после запятой. bles Помощь студентам 9 19.02.2008 21:53
Замена второго бита в числе SZR Помощь студентам 4 25.01.2008 20:16
Как проверть, есть ли в числе запятая? Look Общие вопросы C/C++ 5 06.11.2007 21:27