Копирование значения ячейки с сохранением форматирования из одной ячейки в другую в Excel с помощью VBA

В excel я пытаюсь скопировать текст из одной ячейки в другую ячейку на другом листе. Исходная ячейка содержит форматированный текст(полужирный, подчеркнутый, разные цвета). Но когда я копирую текст с помощью VBA в другую ячейку, форматирование теряется.

Я знаю, что это потому, что Excel копирует только текстовое значение. Есть ли способ прочитать текст HTML(а не обычный текст)из клетки?

Я гуглил это и не получил никаких ответов. Я знаю, что если мы используем методы копирования и вставки, мы можем скопировать форматирование. Например.

Range("F10").Select
Selection.Copy
Range("I10").Select
ActiveSheet.Paste

Но я хочу сделать это без копирования и вставки, поскольку мой пункт назначения представляет собой объединенную ячейку и не имеет такого же размера, как моя исходная ячейка. Есть ли возможность сделать это в excel VBA?

РЕДАКТИРОВАТЬ :Я смог решить это с помощью следующего кода.

Range("I11").Value = Range("I10").Value
For i = 1 To Range("I10").Characters.Count
    Range("I11").Characters(i, 1).Font.Bold = Range("I10").Characters(i, 1).Font.Bold
    Range("I11").Characters(i, 1).Font.Color = Range("I10").Characters(i, 1).Font.Color
    Range("I11").Characters(i, 1).Font.Italic = Range("I10").Characters(i, 1).Font.Italic
    Range("I11").Characters(i, 1).Font.Underline = Range("I10").Characters(i, 1).Font.Underline
    Range("I11").Characters(i, 1).Font.FontStyle = Range("I10").Characters(i, 1).Font.FontStyle
Next i
8
задан BlackCursor 7 August 2012 в 19:04
поделиться