- Tham gia
- 5/7/20
- Bài viết
- 62
- Được thích
- 12
Cháu xin chào tất cả cô chú anh chị GPE. Cháu có dùng 2 đoạn code sau đảo ngược dữ liệu và xóa bỏ đi dòng trống
	
	
	
		
Code chạy thì ok mà nó dài quá. Vậy có cách nào rút gọn không mọi người. mong mọi người giúp đỡ. Cháu xin chân thành cảm ơn
Lưu ý : cháu có thử dùng End(xlUp) nhưng khi Vùng dữ liệu B3:C14 trống hết hoặc Full dữ liệu thì nó chạy sai

				
			
		Mã:
		
	
	Sub daonguoc()
On Error Resume Next
Dim I, j, a As Long
Dim arr, arr1
arr = Range("B3:C14").Value ' nguon
ReDim arr1(1 To UBound(arr, 1), 1 To UBound(arr, 2))
For I = UBound(arr, 1) To 1 Step -1
    a = a + 1
      For j = 1 To UBound(arr, 2)
      arr1(a, j) = arr(I, j)
      Next j
Next I
Range("e3").Resize(a, UBound(arr, 2)).Value = arr1   ' output
End Sub
Sub locdongtrongsort()
On Error Resume Next
Dim sArr(), I As Long, K As Long, R As Long, Col As Long
sArr = Range("E3:F14").Value ' nguon
R = UBound(sArr)
ReDim dArr(1 To R, 1 To 2)
For I = 1 To R
    If sArr(I, 1) <> "" Then
        K = K + 1
        For Col = 1 To 2
            dArr(K, Col) = sArr(I, Col)
        Next Col
    End If
Next I
' OUTPUT
Range("E3:F14").ClearContents
Range("E3").Resize(K, 2) = dArr
End SubCode chạy thì ok mà nó dài quá. Vậy có cách nào rút gọn không mọi người. mong mọi người giúp đỡ. Cháu xin chân thành cảm ơn
Lưu ý : cháu có thử dùng End(xlUp) nhưng khi Vùng dữ liệu B3:C14 trống hết hoặc Full dữ liệu thì nó chạy sai

 
	 
	  
 
 
		

 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		