Cần giúp viết Code xóa khoảng trống ngoài cùng bên phải trong ô (Xóa trực tiếp trên ô (1 người xem)

Người dùng đang xem chủ đề này

hung2412

Thành viên tích cực
Tham gia
5/8/08
Bài viết
934
Được thích
240
Giới tính
Nam
Chào các bạn GPE!
Nhờ các bạn giúp đỡ cho tôi vấn đề này với, cụ thể như sau:
Dọc theo cột B có 1 vài ô chứa dữ liệu có khoảng trống ngoài cùng bên phải => Viết Code như thế nào để loại bỏ
khoảng trống ngoài cùng bên phải trong ô (Thực hiện trực tiếp trên ô đó dọc theo cột B)?
Ví dụ:
- Ô B3 có nội dung là: "Chi phí khấu hao TSCĐ " => Xóa
khoảng trống ngoài cùng bên phải trong ô => Nội dung ô B3 có nội dung mới là: "Chi phí khấu hao TSCĐ".
- Ô B6
có nội dung là: "Tiền vé xe đi nghỉ phép" => Không có khoảng trống ngoài cùng bên phải trong ô => Ô B6 được giữ nguyên.
Mong các bạn GPE chỉ giáo!
Trân trọng cảm ơn!
P/s: Có 01 File đính kèm.
 

File đính kèm

Chào các bạn GPE!
Nhờ các bạn giúp đỡ cho tôi vấn đề này với, cụ thể như sau:
Dọc theo cột B có 1 vài ô chứa dữ liệu có khoảng trống ngoài cùng bên phải => Viết Code như thế nào để loại bỏ
khoảng trống ngoài cùng bên phải trong ô (Thực hiện trực tiếp trên ô đó dọc theo cột B)?
Ví dụ:
- Ô B3 có nội dung là: "Chi phí khấu hao TSCĐ " => Xóa
khoảng trống ngoài cùng bên phải trong ô => Nội dung ô B3 có nội dung mới là: "Chi phí khấu hao TSCĐ".
- Ô B6
có nội dung là: "Tiền vé xe đi nghỉ phép" => Không có khoảng trống ngoài cùng bên phải trong ô => Ô B6 được giữ nguyên.
Mong các bạn GPE chỉ giáo!
Trân trọng cảm ơn!
P/s: Có 01 File đính kèm.
Bạn sử dụng hàm =TRIM(B3:B26) cũng được mà
còn code thì để mình thử xem thế nào đã nha nếu được mình úp lên
 
Upvote 0
Chào các bạn GPE!
Nhờ các bạn giúp đỡ cho tôi vấn đề này với, cụ thể như sau:
Dọc theo cột B có 1 vài ô chứa dữ liệu có khoảng trống ngoài cùng bên phải => Viết Code như thế nào để loại bỏ
khoảng trống ngoài cùng bên phải trong ô (Thực hiện trực tiếp trên ô đó dọc theo cột B)?
Ví dụ:
- Ô B3 có nội dung là: "Chi phí khấu hao TSCĐ " => Xóa
khoảng trống ngoài cùng bên phải trong ô => Nội dung ô B3 có nội dung mới là: "Chi phí khấu hao TSCĐ".
- Ô B6
có nội dung là: "Tiền vé xe đi nghỉ phép" => Không có khoảng trống ngoài cùng bên phải trong ô => Ô B6 được giữ nguyên.
Mong các bạn GPE chỉ giáo!
Trân trọng cảm ơn!
P/s: Có 01 File đính kèm.

Theo như yêu cầu của bạn thì không cần phải viết code cũng xử lý đc mà. Bạn dùng hàm TRIM để xóa bỏ khoảng trắng.
Như trong file của bạn: ô G3 bạn nhập =trim(b3) --> Enter và kéo xuống.
Hay bạn có ý gì khác mà mình không hiểu ?

PS: File này bạn đã gửi ở chủ đề này rồi mà:

http://www.giaiphapexcel.com/forum/...mở-ngoặc-(-)-bên-phải-ngoài-cùng-trong-ô-cell

Trong chủ đề ấy bạn dùng công thức tron #2 và thêm hàm TRIM vào là đc. Cụ thể ô G3:

Mã:
G3 =TRIM(IF(COUNTIF(B3,"*(*"),LEFT(B3,LOOKUP(2,1/("("=MID(B3,ROW(INDIRECT("1:"&LEN(B3))),1)),ROW(INDIRECT("1:"&LEN(B3))))-1),B3))
 
Lần chỉnh sửa cuối:
Upvote 0
Chào các bạn GPE!
Nhờ các bạn giúp đỡ cho tôi vấn đề này với, cụ thể như sau:
Dọc theo cột B có 1 vài ô chứa dữ liệu có khoảng trống ngoài cùng bên phải => Viết Code như thế nào để loại bỏ
khoảng trống ngoài cùng bên phải trong ô (Thực hiện trực tiếp trên ô đó dọc theo cột B)?
Ví dụ:
- Ô B3 có nội dung là: "Chi phí khấu hao TSCĐ " => Xóa
khoảng trống ngoài cùng bên phải trong ô => Nội dung ô B3 có nội dung mới là: "Chi phí khấu hao TSCĐ".
- Ô B6
có nội dung là: "Tiền vé xe đi nghỉ phép" => Không có khoảng trống ngoài cùng bên phải trong ô => Ô B6 được giữ nguyên.
Mong các bạn GPE chỉ giáo!
Trân trọng cảm ơn!
P/s: Có 01 File đính kèm.
nếu thích code thì thử code sau xem thế nào
PHP:
Sub abc()
Dim nguon(), kq, i, j, k
nguon = Sheet1.Range("B3:B100").Value
ReDim kq(1 To UBound(nguon, 1), 1 To 1)
For i = 1 To UBound(nguon, 1)
    If nguon(i, 1) <> "" Then
        k = k + 1
        kq(k, 1) = nguon(i, 1)
        kq(k, 1) = Trim(nguon(i, 1))
    End If
Next
[H3].Resize(k*3) = kq
End Sub
 
Upvote 0
Nếu đã muốn hoành tráng thì cho hoành tráng chút
Chọn vùng cần xử lý, bấm chuột phải sẽ thấy lệnh Cell Trim
PHP:
Sub CellTrim()
Dim data(), I&, J&
If Selection.Count = 1 Then Exit Sub
data = Selection.Value
For I = 1 To UBound(data)
   For J = 1 To UBound(data, 2)
      data(I, J) = Trim(data(I, J))
   Next
Next
Selection.Value = data
End Sub
Sub Auto_Open()
With CommandBars(35)
   .Reset
   With .Controls.Add(1, , , 1)
      .Caption = "Cell Trim"
      .OnAction = "CellTrim"
   End With
End With
End Sub
Sub Auto_Close()
CommandBars(35).Reset
End Sub
 
Upvote 0
Nếu đã muốn hoành tráng thì cho hoành tráng chút
Chọn vùng cần xử lý, bấm chuột phải sẽ thấy lệnh Cell Trim
PHP:
Sub CellTrim()
Dim data(), I&, J&
If Selection.Count = 1 Then Exit Sub
data = Selection.Value
For I = 1 To UBound(data)
   For J = 1 To UBound(data, 2)
      data(I, J) = Trim(data(I, J))
   Next
Next
Selection.Value = data
End Sub
Sub Auto_Open()
With CommandBars(35)
   .Reset
   With .Controls.Add(1, , , 1)
      .Caption = "Cell Trim"
      .OnAction = "CellTrim"
   End With
End With
End Sub
Sub Auto_Close()
CommandBars(35).Reset
End Sub
kaka... very good
chủ đề tài tha hồ mà lựa quá sướng
 
Upvote 0
nếu thích code thì thử code sau xem thế nào
PHP:
Sub abc()
Dim nguon(), kq, i, j, k
nguon = Sheet1.Range("B3:B100").Value
ReDim kq(1 To UBound(nguon, 1), 1 To 1)
For i = 1 To UBound(nguon, 1)
    If nguon(i, 1) <> "" Then
        k = k + 1
        kq(k, 1) = nguon(i, 1)
        kq(k, 1) = Trim(nguon(i, 1))
    End If
Next
[H3].Resize(k*3) = kq
End Sub
Code dư nhiều quá. Sửa lại vầy cho gọn
Mã:
Sub abc()
Dim nguon(), i
With Sheet1.Range("B3:B100")[INDENT]nguon= .Value
For i = 1 To UBound(nguon, 1)       
       nguon(i, 1) = Trim(nguon(i, 1) ) 
Next
.value=nguon
[/INDENT]
End With
End Sub
 
Upvote 0
Dùng hàm Trim sẽ bị mất luôn các khoảng cách ở đầu (bên trái). Theo đúng như lời chủ thớt thì chỉ muốn bỏ khoảng trắng ở sau.
Phải dùng hàm RTirm mới đúng.
Nếu không dùng Rtrim thì như sau:
Mid(Trim("#"& DữLiệu),2)
 
Lần chỉnh sửa cuối:
Upvote 0
Upvote 0
Hai công thức trên tôi muốn nói là dùng trong VBA.
RTrim là hàm căn bản trong mọi phiên bản của BASIC.

Trong bài của bạn, hàm Trim của bảng tính không thể dùng được. Vì hàm này có tính chất thâu mọi khảng cách liên tiếp nhau thành 1.
 
Upvote 0
Hai công thức trên tôi muốn nói là dùng trong VBA.
RTrim là hàm căn bản trong mọi phiên bản của BASIC.

Trong bài của bạn, hàm Trim của bảng tính không thể dùng được. Vì hàm này có tính chất thâu mọi khảng cách liên tiếp nhau thành 1.
Vậy bạn có thể nói rõ hơn cho tôi về cách dùng trong VBA được không ạ? (Để tôi tham khảo thêm cũng là nâng cao kiến thức).
 
Upvote 0
Vậy bạn có thể nói rõ hơn cho tôi về cách dùng trong VBA được không ạ? (Để tôi tham khảo thêm cũng là nâng cao kiến thức).

Cửa số Immediate của VBA dùng để debug. Nhiệm vụ chính của debug là để thử code.
Mấy hàm này đâu có gì phuwcs tạp. Bạn cứ vào debug thử hết dữ liệu này đến dữ liệu khác là hiểu chúng làm việc ra sao chứ gì.

Tôi đã và đang học như thế đó. Thử cỡ chục kiểu dữ liệu khác nhau thì hiểu vấn đề. Chả có mẹo gì cả.
 
Upvote 0

Bài viết mới nhất

Back
Top Bottom