Option Explicit Sub test() Dim Arr() As Variant Dim Range As Range Dim i As Integer Set Range = Application.Intersect(ActiveSheet.Range("A:B"), ActiveSheet.UsedRange) Arr = Range.Value For i = 1 To UBound(Arr, 1) Arr(i, 1) = Arr(i, 1) & Arr(i, 2) Next Range.Value = Arr ActiveSheet.Columns(2).Delete '删除第二列 MsgBox "ok" End Sub