Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Закрашивание буквы в ячейке, если перед ней стоит пробел - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Закрашивание буквы в ячейке, если перед ней стоит пробел
Liana88 Дата: Понедельник, 30.01.2017, 04:21 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Здравствуйте, подскажите, пожалуйста, как можно закрасить лишь одну букву в ячейке с данными, перед которой стоит пробел?
Поставлена формула для определения пола, но в некоторых случая она работает не так как нужно, например, Ульяну Петрович она определила как мужчину, потому в конце лучше ставить букву А, через пробел, чтобы этого избежать, но она не должна выводиться на печать. Через УФ он закрашивает всю ячейку, не против если это будет и УФ, если это возможно, либо макрос, но не автоматический. Спасибо.
К сообщению приложен файл: _Microsoft_Exce.xls (26.5 Kb)


Сообщение отредактировал Liana88 - Понедельник, 30.01.2017, 04:22
 
Ответить
СообщениеЗдравствуйте, подскажите, пожалуйста, как можно закрасить лишь одну букву в ячейке с данными, перед которой стоит пробел?
Поставлена формула для определения пола, но в некоторых случая она работает не так как нужно, например, Ульяну Петрович она определила как мужчину, потому в конце лучше ставить букву А, через пробел, чтобы этого избежать, но она не должна выводиться на печать. Через УФ он закрашивает всю ячейку, не против если это будет и УФ, если это возможно, либо макрос, но не автоматический. Спасибо.

Автор - Liana88
Дата добавления - 30.01.2017 в 04:21
bmv98rus Дата: Понедельник, 30.01.2017, 08:10 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4147
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016
Liana88,

Это не совсем то что вы хотите, но вариант достижения результата.
Есть возможность вставить рядом дополнительный столбец? Если да, то в него например
Код
=LEFT(F2;IFERROR(FIND(" ";F2;FIND(" ";F2)+1)-1;LEN(F2)))

и [vba]
Код
Private Sub Worksheet_Calculate()
    Sheet1.Range("G:G").EntireColumn.Hidden = True
    Sheet1.Range("F:F").EntireColumn.Hidden = False
End Sub

Private Sub Workbook_BeforePrint(Cancel As Boolean)
    With Sheet1
        .Range("G:G").EntireColumn.Width = .Range("F:F").EntireColumn.Width
        .Range("G:G").EntireColumn.Hidden = False
        .Range("D:D").EntireColumn.Hidden = True
    End With
End Sub
[/vba]

P.S. на предпросмотре не идно, только на печати.
К сообщению приложен файл: 111.xlsm (14.9 Kb)


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Понедельник, 30.01.2017, 08:21
 
Ответить
СообщениеLiana88,

Это не совсем то что вы хотите, но вариант достижения результата.
Есть возможность вставить рядом дополнительный столбец? Если да, то в него например
Код
=LEFT(F2;IFERROR(FIND(" ";F2;FIND(" ";F2)+1)-1;LEN(F2)))

и [vba]
Код
Private Sub Worksheet_Calculate()
    Sheet1.Range("G:G").EntireColumn.Hidden = True
    Sheet1.Range("F:F").EntireColumn.Hidden = False
End Sub

Private Sub Workbook_BeforePrint(Cancel As Boolean)
    With Sheet1
        .Range("G:G").EntireColumn.Width = .Range("F:F").EntireColumn.Width
        .Range("G:G").EntireColumn.Hidden = False
        .Range("D:D").EntireColumn.Hidden = True
    End With
End Sub
[/vba]

P.S. на предпросмотре не идно, только на печати.

Автор - bmv98rus
Дата добавления - 30.01.2017 в 08:10
Nic70y Дата: Понедельник, 30.01.2017, 08:37 | Сообщение № 3
Группа: Друзья
Ранг: Экселист
Сообщений: 9130
Репутация: 2415 ±
Замечаний: 0% ±

Excel 2010

так видать
[vba]
Код
Sub U__250()
        Application.ScreenUpdating = 0
         
        u_1 = Cells(Rows.Count, 6).End(xlUp).Row            'последняя строка
        u_2 = " А"                    'искомое
         
        For Each c In Range("F2:F" & u_1)
            If c.Value <> Replace(c.Value, u_2, "") Then    'если искомое есть в тексте
                s = Right(c, 2)
                i_28 = Len(c)
                If s = u_2 Then                     'если искомое в конце
                c.Characters(Start:=i_28, Length:=2).Font.ColorIndex = 2
                End If
            End If
        Next c

        Application.ScreenUpdating = 1
End Sub
[/vba]
К сообщению приложен файл: 5593049.xls (36.0 Kb)


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Понедельник, 30.01.2017, 08:56
 
Ответить
Сообщение

так видать
[vba]
Код
Sub U__250()
        Application.ScreenUpdating = 0
         
        u_1 = Cells(Rows.Count, 6).End(xlUp).Row            'последняя строка
        u_2 = " А"                    'искомое
         
        For Each c In Range("F2:F" & u_1)
            If c.Value <> Replace(c.Value, u_2, "") Then    'если искомое есть в тексте
                s = Right(c, 2)
                i_28 = Len(c)
                If s = u_2 Then                     'если искомое в конце
                c.Characters(Start:=i_28, Length:=2).Font.ColorIndex = 2
                End If
            End If
        Next c

        Application.ScreenUpdating = 1
End Sub
[/vba]

Автор - Nic70y
Дата добавления - 30.01.2017 в 08:37
Alex_ST Дата: Понедельник, 30.01.2017, 09:02 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3219
Репутация: 622 ±
Замечаний: 0% ±

2003
Да... Формула вообще врёт безбожно. Мало того, что
Ульяну Петрович она определила как мужчину
, так ещё и Гадя Петрович Хренова у неё женщина! hands
А если серьёзно, то:
Во-первых, стандартными формулами листа изменить формат текста ячейки, а тем более - отдельного символа её текста невозможно.
Во-вторых, ручное искажение данных в ячейках (дописывание буквы А, скрытой форматированием ТОЛЬКО ОТ ВЫВОДА на экран или печать) - порочный метод, который может привести к проблемам при возникновении в дальнейшем необходимости в обработке информации.
Т.е. нужно принципиально менять подход.



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеДа... Формула вообще врёт безбожно. Мало того, что
Ульяну Петрович она определила как мужчину
, так ещё и Гадя Петрович Хренова у неё женщина! hands
А если серьёзно, то:
Во-первых, стандартными формулами листа изменить формат текста ячейки, а тем более - отдельного символа её текста невозможно.
Во-вторых, ручное искажение данных в ячейках (дописывание буквы А, скрытой форматированием ТОЛЬКО ОТ ВЫВОДА на экран или печать) - порочный метод, который может привести к проблемам при возникновении в дальнейшем необходимости в обработке информации.
Т.е. нужно принципиально менять подход.

Автор - Alex_ST
Дата добавления - 30.01.2017 в 09:02
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!