Как да свържа клетъчни колони и да запазя цвета на текста в Excel?
Както всички знаем, докато конкатенирате или комбинирате клетъчни колони в една колона, форматирането на клетката (като цвят на шрифта на текста, форматиране на числа и т.н.) ще бъде загубено. В тази статия ще представя някои трикове за комбиниране на клетъчните колони в една и запазване на цвета на текста възможно най-лесно в Excel.
Свързване на клетъчни колони и запазване на цвета на шрифта на текста с VBA код
Свързване на клетъчни колони и запазване на цвета на шрифта на текста с VBA код
За да завършите тази задача в Excel, следният VBA код може да ви направи услуга, моля, направете следното:
1. Задръжте натиснат ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
2. Щракнете Поставете > Модулии поставете следния код в Прозорец на модула.
VBA код: свързване на клетъчни колони и запазване на цвета на текста:
Sub MergeFormatCell()
'Updateby Extendoffice
Dim xSRg As Range
Dim xDRg As Range
Dim xRgEachRow As Range
Dim xRgEach As Range
Dim xRgVal As String
Dim I As Integer
Dim xRgLen As Integer
Dim xSRgRows As Integer
Dim xAddress As String
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xSRg = Application.InputBox("Please select cell columns to concatenate:", "KuTools For Excel", xAddress, , , , , 8)
If xSRg Is Nothing Then Exit Sub
xSRgRows = xSRg.Rows.Count
Set xDRg = Application.InputBox("Please select cells to output the result:", "KuTools For Excel", , , , , , 8)
If xDRg Is Nothing Then Exit Sub
Set xDRg = xDRg(1)
For I = 1 To xSRgRows
xRgLen = 1
With xDRg.Offset(I - 1)
.Value = vbNullString
.ClearFormats
.NumberFormat = "@"
Set xRgEachRow = xSRg(1).Offset(I - 1).Resize(1, xSRg.Columns.Count)
For Each xRgEach In xRgEachRow
.Value = .Value & Trim(xRgEach.Value) & " "
Next
For Each xRgEach In xRgEachRow
xRgVal = xRgEach.Value
With .Characters(xRgLen, Len(Trim(xRgVal))).Font
.Name = xRgEach.Font.Name
.FontStyle = xRgEach.Font.FontStyle
.Size = xRgEach.Font.Size
.Strikethrough = xRgEach.Font.Strikethrough
.Superscript = xRgEach.Font.Superscript
.Subscript = xRgEach.Font.Subscript
.OutlineFont = xRgEach.Font.OutlineFont
.Shadow = xRgEach.Font.Shadow
.Underline = xRgEach.Font.Underline
.ColorIndex = xRgEach.Font.ColorIndex
End With
xRgLen = xRgLen + Len(Trim(xRgVal)) + 1
Next
End With
Next I
End Sub
3. След това натиснете F5 ключ, за да изпълните този код, и се появява поле за подкана, за да ви напомни да изберете диапазона от данни, който искате да комбинирате с цвета на текста, вижте екранната снимка:
4, И после щракнете върху OK, се появява друг диалогов прозорец, моля, изберете клетките, където искате да изведете комбинираните резултати, вижте екранната снимка:
5, След това кликнете OK колоните са свързани без загуба на цвета на текста, както е показано на следната екранна снимка:
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!