Страницы: 1
RSS
Поиск ячейки с другим форматом в книге, поиск ячеек с другим форматом, желательно через условное форматирование
 
Добрый день!

Нужна помощь по поиску ячеек с другим форматом отображения, желательно через условное форматирование, но если это невозможно, то любой способ рассматриваю, формат таблицы отображается следующим образом: один знак после запятой, как найти все ячейки в книге/на листе с 2,3,4.... знаками после запятой, чтобы внести изменения? Модель большая, более 50 листов, на листе формат в млн руб и в % - приходится каждый раз глазами это все выискивать, пытаюсь найти способ другой...

Я попробовала через условное форматирование ПОИСК(",???";A1)/ОТБР(A1;2)<>A1
Функция ячейка и поиск и много всего, но толку пока нет.

Спасибо!

Пример: Пример.xlsx (13.1 КБ)
 
Цитата
Kristin@ написал:
желательно через условное форматирование
Пробуйте так
Код
=--ПРАВСИМВ(ЯЧЕЙКА("формат";B2);1)>1
 
Код
Option Explicit

Sub Find_in_file()
    Find_in_workbook ActiveWorkbook
End Sub

Sub Find_in_workbook(wb As Workbook)
    Dim sh As Worksheet
    For Each sh In wb.Worksheets
        Find_in_sheet sh
    Next
End Sub

Sub Find_in_sheet(sh As Worksheet)
    Dim ur As Range
    On Error Resume Next
    Set ur = sh.UsedRange
    On Error GoTo 0
    If ur Is Nothing Then Exit Sub
    
    Find_in_range ur
End Sub

Sub Find_in_range(rr As Range)
    Dim cl As Range
    For Each cl In rr.Cells
        Find_in_cell cl
    Next
End Sub

Sub Find_in_cell(cl As Range)
    If IsError(cl.Value) Then Exit Sub
    If IsEmpty(cl.Value) Then Exit Sub
    If Not IsNumeric(cl.Value) Then Exit Sub
    If cl.NumberFormat <> "#,##0.0,," Then
        cl.Interior.Color = RGB(255, 200, 200)
    End If
End Sub
 
Это уже круто!

В примере забыла указать еще вариант развития событий, а если число будет без разрядности или % с одним знаком после запятой, уже форматирование не срабатывает, можно это как то предусмотреть?

пример: Пример_1.xlsx (13.46 КБ)
 
Пробуйте
Код
=ЕСЛИ(ЛЕВСИМВ(ЯЧЕЙКА("формат";B2);1)="P";ПРАВСИМВ(ЯЧЕЙКА("формат";B2);1)+1;--ПРАВСИМВ(ЯЧЕЙКА("формат";B2);1))<>1
 
Да вы гении!!!! Благодарю от всей души!!!!
 
Наверное так будет правильнее
Код
=ЕСЛИ(ЛЕВСИМВ(ЯЧЕЙКА("формат";B2);1)="P";ПОДСТАВИТЬ(ЯЧЕЙКА("формат";B2);"P";"")+1;(ЯЧЕЙКА("формат";B2)*10))<>1
 
Код
=(ПРАВСИМВ(ЯЧЕЙКА("формат";B2);2)<>",1")*(ЯЧЕЙКА("формат";B2)<>"P0")*ЕЧИСЛО(B2)
или
Код
Option Explicit
'v2
Sub Find_in_file()
    Find_in_workbook ActiveWorkbook
End Sub

Sub Find_in_workbook(wb As Workbook)
    Dim sh As Worksheet
    For Each sh In wb.Worksheets
        Find_in_sheet sh
    Next
End Sub

Sub Find_in_sheet(sh As Worksheet)
    Dim ur As Range
    On Error Resume Next
    Set ur = sh.UsedRange
    On Error GoTo 0
    If ur Is Nothing Then Exit Sub
    
    Find_in_range ur
End Sub

Sub Find_in_range(rr As Range)
    Dim cl As Range
    For Each cl In rr.Cells
        Find_in_cell cl
    Next
End Sub

Sub Find_in_cell(cl As Range)
    If IsError(cl.Value) Then Exit Sub
    If IsEmpty(cl.Value) Then Exit Sub
    If Not IsNumeric(cl.Value) Then Exit Sub
    Select Case cl.NumberFormat
    Case "#,##0.0,,", "0%"
    Case Else
        cl.Interior.Color = RGB(255, 200, 200)
    End Select
End Sub
 
Kristin@,   если вопрос только про поиск не того формата, как вариант:
=НЕ(ИЛИ(ЯЧЕЙКА("формат";B2)=",1";ЯЧЕЙКА("формат";B2)="P0"))
...но быть может практичней очистить все форматы, а далее сделать правило УФ для отображения в нужном формате? (если есть к чему "прицепиться")
 
ПавелW, все форматы нельзя очистить, отображение должно быть в определенном формате (млн руб, с одним знаком после запятой; если 0 - пустая ячейка; % - без разрядности и плюс итоги жирные)
В целом форматы все настроены, лишнее все очищено, сейчас проставлю УФ на подсветку если другой формат ячейки, это очень облегчит поиск.

Всем огромное спасибо! Все формулы для УФ рабочие! Осталось научиться самой создавать такие "финты ушами" и будет счастье))
Кстати, а тут можно найти человека, который научит макросам и всяким интересным штукам?
 
Цитата
написал:
Кстати, а тут можно найти человека, который научит макросам и всяким интересным штукам?
Безусловно)
Тренинг "Программирование макросов на VBA в Excel" (3 дня)
Тренинг "VBA Pro: Профессиональная разработка на VBA в Excel"
 
Цитата
Kristin@:   форматы нельзя очистить, отображение должно быть в определенном формате
ПавелW,:   если есть к чему "прицепиться"
см "Здесь формат реализован УФом"
 
Цитата
ПавелW написал:
см "Здесь формат реализован УФом"
Ещё вариант без столбца ед.изм, столбец B
 
Цитата
Msi2102:  Ещё вариант без столбца ед.изм
Msi2102, а если формат "Общий" или любой другой кроме числового и процентного?))
Цитата
Поиск ячейки с другим форматом
 
Цитата
ПавелW написал:
а если формат "Общий" или любой другой
ТС до этого пмсала
Цитата
Kristin@ написал:
В целом форматы все настроены, лишнее все очищено
, но в целом, надо будет к условию с "," добавить "G", " S", "C" и "F". Хотя их наверное нужно сделать отдельным условием, типа <>",", с выделением цветом, чтобы было видно, что это не в милионнах, а именно в другом формате
Изменено: Msi2102 - 15.03.2026 04:40:54
Страницы: 1
Читают тему
Наверх