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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.10.2009, 23:49   #1
сергей4
Новичок
Джуниор
 
Регистрация: 09.10.2009
Сообщений: 2
По умолчанию не считает цифры подскажите

не считает цифры в строке,подскажите как правильно
есть строки
12 15 17 18 19
20 22 36 34 44
Sub TestKolDigit()
Dim c As Range, s As String
Dim Cnt As Integer, i As Integer
Dim intI, intJ, intK As Integer
s = ""

For intI = 1 To 20

Worksheets("Ëèñò1").Cells(intI, 6).ClearContents 'îáíóëÿåì ÿ÷åéêó â 6-îì ñòîëáöå i-îé ñòðîêè

For intJ = 1 To 5

For Each c In Selection
If TypeName(c.Value) = "Double" Then
s = s + Trim(CStr(c.Value))
End If
Next

Cnt = 0
For i = 0 To 9
If InStr(s, CStr(i)) > 0 Then Cnt = Cnt + 1
Cells(intI, 6).Value = Cnt
Next i
Next intJ
Next intI
End Sub


как посчитать цифры в каждой строкев числах?
сергей4 вне форума Ответить с цитированием
Старый 20.10.2009, 00:51   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

я так посчитал - отмечаете нужный диапазон, запускаете эту процедуру.
Код:
Sub DigitCount()
  Dim cnt As Integer, s As String
  cnt = 0
  For Each c In Selection
    If VarType(c) <> vbString Then s = Str(c) Else s = c
    For i = 1 To Len(s)
      If Mid(s, i, 1) >= "0" And Mid(s, i, 1) <= "9" Then cnt = cnt + 1
    Next
  Next
  Debug.Print cnt
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 20.10.2009, 12:22   #3
сергей4
Новичок
Джуниор
 
Регистрация: 09.10.2009
Сообщений: 2
По умолчанию счет цифр

Sub DigitCount()
Dim cnt As Integer, s As String
cnt = 0
For Each c In Selection
If VarType(c) <> vbString Then s = Str(c) Else s = c
For i = 1 To Len(s)
If Mid(s, i, 1) >= "0" And Mid(s, i, 1) <= "9" Then cnt = cnt + 1
Next
Next
Debug.Print cnt
End Sub

она считает цифры во всем выделенном диапазоне общее кол-во ,а как
посчитать цифры в каждой строке
допустим
1 22 35 44 45 всего встроке 5 цифр (1,2,3,5,4,)
и перейти к следующей
спасибо
сергей4 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите пожалуйста, как сделать, чтобы в Edit можно было ввести цифры от 0 до 12. ciev Общие вопросы Delphi 6 14.05.2016 17:45
Javascript не считает дату Cannibal Помощь студентам 1 02.10.2009 05:52
Сортирует цифры по строкам, а надо чтобы сортировала цифры , записанные через пробелы Алексей_xXx Помощь студентам 14 06.05.2009 17:42
Не считает сумму между нулями nark25 Общие вопросы C/C++ 6 19.04.2009 19:02
Не считает количество символов DeeCee Общие вопросы Delphi 11 24.12.2007 22:57