Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 16.02.2019, 11:40   #1
Cepreu_HuKoJIaeBu4
Новичок
 
Регистрация: 16.02.2019
Сообщений: 2
Репутация: 10
По умолчанию Форматирование текста в ячейке

Доброго времени суток!
Имеется текст в ячейках некоторые слова которого написаны красным цветом. Необходимо заменить шрифт написанный красным цветом на курсив не меняя цвет.
Таблица большая, более 5000 строк...
К примеру: "Иван Иванов (сын Ивана Ивановича)" нужно заменить на "Иван Иванов (сын Ивана Ивановича)"

Во вложении пример с макросом, но если текст начинается с красного шрифта то макрос не работает...

Подскажите как это можно осуществить?
Вложения
Тип файла: zip 166.zip (13.5 Кб, 8 просмотров)
Cepreu_HuKoJIaeBu4 вне форума   Ответить с цитированием
Старый 16.02.2019, 15:48   #2
Казанский
Профессионал
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
Репутация: 938
По умолчанию

кросс https://www.planetaexcel.ru/forum/in...sta-v-yacheyke
__________________
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума   Ответить с цитированием
Старый 16.02.2019, 17:12   #3
Cepreu_HuKoJIaeBu4
Новичок
 
Регистрация: 16.02.2019
Сообщений: 2
Репутация: 10
По умолчанию

Задача решена благодаря _Boroda_ с МИР MS EXCEL

Код:
Sub tt()
    Dim d As Range, d0 As Range
    Set d0 = Selection
    col_ = 255
    Application.ScreenUpdating = 0
    Application.Calculation = 3
    On Error Resume Next
    For Each d In d0
        With d
            ld_ = Len(.Value)
            ReDim ar(1 To ld_)
            For i = 1 To ld_
                ar(i) = .Characters(Start:=i, Length:=1).Font.Color
            Next i
            .Font.Color = 1
            For i = 1 To ld_
                If ar(i) = col_ Then
                    With .Characters(Start:=i, Length:=1).Font
                        .FontStyle = "курсив"
                        .Color = col_
                    End With
                End If
            Next i
        End With
    Next d
    Application.Calculation = 1
    Application.ScreenUpdating = 1
End Sub
Всем спасибо!
Cepreu_HuKoJIaeBu4 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Форматирование текста Tomoyo HTML и CSS 2 18.07.2013 19:33
Форматирование текста Arsenx777 Работа с сетью в Delphi 1 31.05.2011 14:55
Форматирование текста Sergey2 Общие вопросы Delphi 10 23.09.2009 08:04
форматирование текста в ячейке alex_r Microsoft Office Excel 2 30.04.2009 19:12
Форматирование текста MAcK Общие вопросы Delphi 3 03.04.2008 11:38


04:09.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.