powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как выглядит скрипт, считающий красные строчки в EXCELL?
12 сообщений из 12, страница 1 из 1
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35887950
arrio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как выглядит скрипт, считающий красные строчки в EXCELL - файле и выдающий их количество и их самих в MSGBOX?
Sub redstring()
redstring = 0
For i = 0 To ' до конца файла данных
i = i + 1
Range("a").Select
If Selection.Font.ColorIndex = 3 Then
redstring = redstring + 1
endif
MsgBox (redstring)
' вывести сами эти строки..
End
End Sub
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35905785
arrio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что, никто не поможет? :( программисты VBA, помогите!
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35905802
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
arrioЧто, никто не поможет? :( программисты VBA, помогите!
вы бы задали свой вопрос в другом разделе, а тут не VBA, а VB
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35905819
Фотография gjghjc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общих чертах он именно так и выглядит.
Только я бы еще добавил переменную
Код: plaintext
RedStringText = RedStringText & vbCrLf & Cell(i, 1 )
В которую бы и помещал собственно содержимое нужных ячеек

С уважением, Николай.
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35905978
sergeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
где-то так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Sub Test()
Dim RWork As Range, RDel As Range, RRow As Long, I As Long, Mes As String
  Application.FindFormat.Interior.ColorIndex =  3 
  Set RWork = Range("A1"): Set RDel = Nothing: I =  0 : Mes = ""
  Do
    Set RWork = Range("A" & RWork.Row & ":A65536").Find(What:="", _
      SearchDirection:=xlNext, SearchFormat:=True)
    If RWork Is Nothing Then
      Exit Do
    Else
      If RDel Is Nothing Then
        Set RDel = RWork
      Else
        If RRow = RWork.Row Then Exit Do
        Set RDel = Union(RDel, RWork)
      End If
      RRow = RWork.Row
      Mes = Mes & RWork.Cells( 1 ,  1 ) & " "
      I = I +  1 
    End If
  Loop
  If Not RDel Is Nothing Then MsgBox "Строк=" & I & " Содержимое=" & Mes 'RDel.EntireRow.Address
End Sub 'Test
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35906007
sergeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
строку
Код: plaintext
1.
    Set RWork = Range("A" & RWork.Row & ":A65536").Find(What:="", _
      SearchDirection:=xlNext, SearchFormat:=True)
лучще заменить на такую, а то запоминаются остатки параметров от предыдущего поиска
Код: plaintext
1.
    Set RWork = Range("A" & RWork.Row & ":A65536").Find(What:="", LookIn:=xlFormulas, _
      LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, SearchFormat:=True)
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35906069
sergeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
т.к. текст брал из другого алгоритма, то было длинно, в данном случае можно еще короче:)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Sub Test()
Dim RWork As Range, RRow As Long, I As Long, Mes As String
  Application.FindFormat.Interior.ColorIndex =  3 
  Set RWork = Range("A1"): I =  0 : Mes = ""
  Do
    Set RWork = Range("A" & RWork.Row & ":A65536").Find(What:="", LookIn:=xlFormulas, _
      LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, SearchFormat:=True)
    If RWork Is Nothing Then Exit Do
    If RRow = RWork.Row Then Exit Do
    RRow = RWork.Row
    Mes = Mes & RWork.Cells( 1 ,  1 ) & " "
    I = I +  1 
  Loop
  If I <>  0  Then MsgBox "Строк=" & I & " Содержимое=" & Mes
End Sub
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35906157
Фотография gjghjc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А может лучше найти для начала последнюю заполненную строку , чтобы в цикле не просматривать все 65 тыс строк (тем более что в 2007 экселе их кажется поболее будет)
С уважением, Николай.
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35906235
sergeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
эта "рыба" - удочка, а не рыба:) это к тому, что я предагаю метод, а не окончательное решение.
да и вижу уже недостатки, например, первую строку не ищет
а по поводу 65 тыс строк, то да, в 2007 побольше.
а по скорости разницы нет, что укажешь, Ексель сам знает, где ему ковыряться.
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35906245
sergeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gjghjc
к собственному удовольствию, по ссылке нашел и свою лепту по поиску последней строки:)
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35906373
Фотография gjghjc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мдя, действительно :)
Осталось только выяснить ходил ли ТС по ссылке или содрал код втупую не задумываясь :)
С уважением, Николай.
...
Рейтинг: 0 / 0
Как выглядит скрипт, считающий красные строчки в EXCELL?
    #35908814
arrio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!!!
Получается, в экселе нет встроенной функции конца данных на листе?
А чтоб мне не все строки с красным текстом искал, а только красные строки на зеленом фоне выдавал?
я просто не знаю синтаксиса..
(Application.FindFormat.Font.ColorIndex = 3 and Application.FindFormat.Interior.ColorIndex = 34) ??
и выдавал найденное не в одну строку Mes = Mes & RWork.Cells(1, 1) & " "
а в списке, то есть добавлять знак конца строки...
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как выглядит скрипт, считающий красные строчки в EXCELL?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]