Phải dùng đến VBA.Mình có 1 dãy số hàng dọc như thế này muốn chuyển sang hàng ngang rồi thêm ký tự ";" để ngăn cách các số chuyển sang word thì làm thế nào các bác !
Câu lệnh màu đỏ là câu rất... rất... tào laoPhải dùng đến VBA.
Tham khảo:
Mở Marco để dùng hàm tự tạo NoiChuoi.Mã:Public Function NoiChuoi(Rng As Range) As String Dim Cel As Range, Tmp As String For Each Cel In Rng [COLOR=#ff0000]If IsEmpty(Cel) Then Tmp = Tmp[/COLOR] Else Tmp = Tmp & "," & Cel End If Next Cel If Len(Tmp) Then NoiChuoi = Right(Tmp, Len(Tmp) - 1) End Function
Của bạn đây, trước khi bấm nút "NỐI CHUỖI" thì dùng chuột chọn ô muốn đặt kết quả, ví dụ D1 hoặc D2 ...Mình có 1 dãy số hàng dọc như thế này muốn chuyển sang hàng ngang rồi thêm ký tự ";" để ngăn cách các số chuyển sang word thì làm thế nào các bác !
Của bạn đây, trước khi bấm nút "NỐI CHUỖI" thì dùng chuột chọn ô muốn đặt kết quả, ví dụ D1 hoặc D2 ...
Muốn copy sang Word thì chọn ô chứa kết quả(Ví dụ D1) nhấn nút copy sau đó mở Word nhấn nút Paste.
Function NoiChuoi1(rng As Range) As String
[COLOR=#008000]' hàm nối các ký tự trong một vùng (thuần dòng hoặc cột) thành một chuõi, cách bởi dấu ";"
[/COLOR]Dim dd As Integer
If (rng.Columns.Count = 1) Then[COLOR=#008000] ' vùng nối là cột[/COLOR]
NoiChuoi1 = Join(Application.Transpose(rng), ";")
ElseIf (rng.Rows.Count = 1) Then[COLOR=#008000] ' vùng nối là dòng[/COLOR]
NoiChuoi1 = Join(Application.Transpose(Application.Transpose(rng)), ";")
Else[COLOR=#008000] ' vùng nối không thuần là dòng hoặc cột[/COLOR]
MsgBox "vung phuc tap qua, khong noi duoc"
NoiChuoi1 = ""
End If
Do While InStr(NoiChuoi1, ";;")[COLOR=#008000] ' loại trường hợp có các ô trống[/COLOR]
NoiChuoi1 = Replace(NoiChuoi1, ";;", ";")
Loop
End Function