Nhờ chỉnh sửa đoạn code trên GPE. (1 người xem)

Liên hệ QC

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

Status
Không mở trả lời sau này.

truongquangtrong

Thành viên mới
Tham gia
6/1/17
Bài viết
37
Được thích
0
Chào các bạn, mình đang học các ứng dụng mở rộng trên excel.

Dựa vào code có trên GPE, mình mới mày mò sửa lại được đoạn code sau:


Mã:
Private Sub UserForm_Initialize()
'On Error Resume Next
    txt_bd = "A"
    txt_kt = 2
    txt_num = 10
    txt_num.SetFocus
End Sub
Private Sub Button_OK_Click()
    Dim Rng As Range, ToRng As Range, i As Long
    Dim lRow As Long
    Dim a As Long, col_des As Long, col_kt As Long
    Dim sh As String, col_bd  As String
    Application.ScreenUpdating = False




    col_bd = txt_bd
    col_kt = txt_kt
    col_des = txt_num
    
    col_des = col_des * col_kt
    If OptionButton1.Value = True Then
        sh = "Data1"
    Else
        sh = "Data2"
    End If
    
    a = Worksheets(sh).Range("A65000").End(xlUp).Row
    If a < 2 Then
        MsgBox "Khong co du lieu de xoa"
    Else
        Worksheets(sh).Range("A2:BD" & a).ClearContents
    End If
      Set ToRng = Worksheets(sh).Range(Cells(2, 1), Cells(2, col_des)) 
  
    Application.ScreenUpdating = True
End Sub
Nhưng khi chạy code thì luôn báo lỗi ở dòng này:
Mã:
Set ToRng = Worksheets(sh).Range(Cells(2, 1), Cells(2, col_des))
Mình không biết các khắc phục, mong mọi người gỡ rối dùm mình.

cảm ơn các bạn.
 
With Worksheets(sh)
Set ToRng = .Range(.Cells(2, 1), .Cells(2, col_des))
End With

Hoặc là

Set ToRng = Worksheets(sh).Range(Worksheets(sh).Cells(2, 1), Worksheets(sh).Cells(2, col_des))
 
Upvote 0
có thể viết như vầy
Set ToRng = Sheets(sh).Range("A2").Resize(, col_des)
 
Upvote 0
Status
Không mở trả lời sau này.
Web KT

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

Back
Top Bottom