Копирование значения ячейки с сохранением форматирования из одной ячейки в другую в Excel с использованием VBA
В Excel я пытаюсь скопировать текст из одной ячейки в другую ячейку на другом листе. Исходная ячейка содержит форматированный текст(bold,underlined,different colors), Но когда я копирую текст с помощью VBA в другую ячейку, форматирование теряется.
Я знаю, это потому, что Excel копирует только текстовое значение. Есть ли способ, которым мы можем прочитатьHTML text (rather than plain text) из клетки?
Я гуглил это и не получил никаких ответов. Я знаю, что если мы используем методы копирования и вставки, мы можем скопировать форматирование. Например.
Range("F10").Select
Selection.Copy
Range("I10").Select
ActiveSheet.Paste
But I want to do it without a copy and paste since my destination is a merged cell and not identically sized as my source cell. Is there an option available in excel VBA to do this?
РЕДАКТИРОВАТЬ: Я смог решить это с помощью следующего кода.
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