Tách cột Nợ- Có căn cứ vào số liệu đã được căn trái - phải (1 người xem)

  • Thread starter Thread starter bbc
  • Ngày gửi Ngày gửi
Liên hệ QC

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

bbc

Thành viên hoạt động
Tham gia
13/1/07
Bài viết
112
Được thích
23
Chào các anh chị,

Em có một cột số liệu trong đó có số phát sinh Nợ được căn trái, phát sinh Có được căn phải. Bây giờ em muốn tách số liệu đó ra 2 cột Nợ- Có được không và làm thế nào ạ

Em cảm ơn nhiều
 

File đính kèm

Chào các anh chị,

Em có một cột số liệu trong đó có số phát sinh Nợ được căn trái, phát sinh Có được căn phải. Bây giờ em muốn tách số liệu đó ra 2 cột Nợ- Có được không và làm thế nào ạ

Em cảm ơn nhiều
Dùng VBA nhé.
Bạn xem file.
 

File đính kèm

Giải pháp Excel mình có nhiều cao thủ, thật đáng hữu ích, đa tạ bác ThuNghi :)
 
Bác ThuNghi ơi cho em hỏi, trường hợp không có dữ liệu ở phần PS thì khi chạy lệnh hệ thống báo debug, vậy làm thế nào để không có số liệu mà không bị debug ạ

Em cảm ơn nhiều
 
Bạn thêm 1 dòng sau vào code

Mã:
Sub TaoPS()
With Sheet1
  endR = .Cells(65000, 4).End(xlUp).Row
  [COLOR=#ff0000][B]If endR < 4 Then Exit Sub[/B][/COLOR]
  ReDim ArrPS(1 To endR, 1 To 2)
  s = 0
  For i = 4 To endR
    s = s + 1
    If .Cells(i, 4).HorizontalAlignment = xlLeft Then
      ArrPS(s, 1) = .Cells(i, 4)
    Else
      ArrPS(s, 2) = .Cells(i, 4)
    End If
  Next i
  With .[I4]
    .Resize(1000, 2).ClearContents
    .Resize(s, 2) = ArrPS
  End With
End With
Erase ArrPS
End Sub
 
Bác ThuNghi ơi cho em hỏi, trường hợp không có dữ liệu ở phần PS thì khi chạy lệnh hệ thống báo debug, vậy làm thế nào để không có số liệu mà không bị debug ạ

Em cảm ơn nhiều
Thì thêm dòng On Error Resume Next vào
PHP:
Sub TaoPS()
  On Error Resume Next
   ''đoạn code cũ
End Sub
 
Cám ơn các bác nhiều, cho em hỏi chút về ý nghĩa của dòng này với ạ

.Resize(1000, 2).ClearContents

Em xoá đi thấy không ảnh hưởng gì ?
 
Cám ơn các bác nhiều, cho em hỏi chút về ý nghĩa của dòng này với ạ

.Resize(1000, 2).ClearContents

Em xoá đi thấy không ảnh hưởng gì ?

Trong đoạn code này:

Mã:
  With .[I4]
    .Resize(1000, 2).ClearContents
    .Resize(s, 2) = ArrPS
  End With

thì từ ô I4 xuống 1000 dòng và qua ngang 2 cột, có nghĩa là tương đương với Range("I4:J1004").ClearContents

Nếu bạn xóa đi, chẳng sao cả, nhưng bạn có chắc là trong 2 cột đó những gì ở khoảng đó không chứa dữ liệu không?
 
Web KT

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

Back
Top Bottom