TOP

Îmbinați celulele fără a pierde text

Descriere

Să presupunem că avem multe celule pe care trebuie să le îmbinăm împreună cu text. Setul standard Excel are o funcție similară: „Imbinare și centrare”, dar la efectuarea îmbinării, lasă doar textul celulei celei mai exterioare. Deci trebuie să folosim propria noastră macrocomandă în astfel de scopuri.


Codul VBA pentru macrocomandă

Pentru a face acest lucru, deschideți editorul Visual Basic (Alt+F11), introduceți modulul VBA (Insert - Module) și copiați acolo textul acestei proceduri:

Sub MergeCell()
    Const sDELIM    As String = " "
    Dim   rCell     As Range
    Dim   sMergeStr As String
    
    If TypeName(Selection) <> "Range" Then Exit Sub
    
    With Selection
        For Each rCell In .Cells
            sMergeStr = sMergeStr & sDELIM & rCell.Text
        Next rCell
        
        Application.DisplayAlerts = False
        .Merge Across:=False
        Application.DisplayAlerts = True
        
        .Item(1).Value = Mid(sMergeStr, 1 + Len(sDELIM))
    End With
End Sub

Salvați și reveniți la Excel.

Acum selectați celulele necesare și rulați macrocomandă (Alt+F8) (nume macro: "MergeCell").