[Đưa bài dùm bạn] Nhờ các bác xem giúp đoạn code này nó báo sai tại dòng Min_1; (1 người xem)

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

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

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia
8/6/06
Bài viết
14,611
Được thích
22,931
Nghề nghiệp
U80
Nó báo sai tại dòng Min_1, cám ơn các bác nhiều
PHP:
Private Sub CommandButton2_Click()
 Dim mRng As Range, Sh As Worksheet, Rng As Range, Clls As Range
 Dim Frame As String
 Dim eRw As Long, Station As Double, Min_ As Double, Max_ As Double
 Sheets("INPUT").Select: eRw = [A65500].End(xlUp).Row
 Set Rng = [A2].Resize(eRw - 3, 7): Set Sh = Sheet1
 [A1].Resize(65000, 10).Copy Destination:=Sh.[A1]           'vi tri copy'


 [M1].Resize(2).Copy Destination:=Sh.[M3]          'vi tri copy tiep theo'
 Rng.Sort Key1:=[A2], Order1:=xlAscending, Key2:=[B2], Order2:=1, Header:=xlGuess
 For Each Clls In Rng.Cells(2, 1).Resize(eRw)
    If Clls.Row = 2 Then
        Set mRng = Clls.Offset(6): Frame = Clls.Value
        Station = Clls.Offset(, 1).Value
    Else
        If Clls.Offset(, 1).Value = Station And Clls.Value = Frame Then
            Set mRng = Union(mRng, Clls.Offset(, 3))
        ElseIf Clls.Offset(, 1).Value <> Station Or _
            (Clls.Offset(, 1).Value = Station And Clls.Value <> Frame) Then
            With Application.WorksheetFunction
                Min_1 = .Min(mRng): Max_1 = .Max(mRng)
            End With
            If Abs(Min_) > Max_ Then Max_ = Min_
                With Sh.[A65500].End(xlUp).Offset(1)         'vi tri paste'
                     .Value = Frame: .Offset(, 1).Value = Station
                     .Offset(, 2).Value = Max_
                End With
                Frame = Clls.Value: Station = Clls.Offset(, 1).Value
                Set mRng = Clls.Offset(, 6)
           End If
       End If
 Next Clls
 MsgBox mRng.Address
 Sh.Select
End Sub
 
mRng không được định nghĩa là gì thì không thể tìm

If Clls.Row = 2 Then
Set mRng
= Clls.Offset(6): Frame = Clls.Value
Station
= Clls.Offset(, 1).Value
Else
If
Clls.Offset(, 1).Value = Station And Clls.Value = Frame Then
Set mRng
= Union(mRng, Clls.Offset(, 3))
ElseIf
Clls.Offset(, 1).Value <> Station Or _
(Clls.Offset(, 1).Value = Station And Clls.Value <> Frame) Then 'đến đây thì mRng không có định nghĩa
With Application
.WorksheetFunction
Min_1
= .Min(mRng): Max_1 = .Max(mRng)
End With
 
Upvote 0
Nó báo sai tại dòng Min_1, cám ơn các bác nhiều
PHP:
Private Sub CommandButton2_Click()
 Dim mRng As Range, Sh As Worksheet, Rng As Range, Clls As Range
 Dim Frame As String
 Dim eRw As Long, Station As Double, Min_ As Double, Max_ As Double
 Sheets("INPUT").Select: eRw = [A65500].End(xlUp).Row
 Set Rng = [A2].Resize(eRw - 3, 7): Set Sh = Sheet1
 [A1].Resize(65000, 10).Copy Destination:=Sh.[A1]           'vi tri copy'


 [M1].Resize(2).Copy Destination:=Sh.[M3]          'vi tri copy tiep theo'
 Rng.Sort Key1:=[A2], Order1:=xlAscending, Key2:=[B2], Order2:=1, Header:=xlGuess
 For Each Clls In Rng.Cells(2, 1).Resize(eRw)
    If Clls.Row = 2 Then
        Set mRng = Clls.Offset(6): Frame = Clls.Value
        Station = Clls.Offset(, 1).Value
    Else
        If Clls.Offset(, 1).Value = Station And Clls.Value = Frame Then
            Set mRng = Union(mRng, Clls.Offset(, 3))
        ElseIf Clls.Offset(, 1).Value <> Station Or _
            (Clls.Offset(, 1).Value = Station And Clls.Value <> Frame) Then
            With Application.WorksheetFunction
                Min_1 = .Min(mRng): Max_1 = .Max(mRng)
            End With
            If Abs(Min_) > Max_ Then Max_ = Min_
                With Sh.[A65500].End(xlUp).Offset(1)         'vi tri paste'
                     .Value = Frame: .Offset(, 1).Value = Station
                     .Offset(, 2).Value = Max_
                End With
                Frame = Clls.Value: Station = Clls.Offset(, 1).Value
                Set mRng = Clls.Offset(, 6)
           End If
       End If
 Next Clls
 MsgBox mRng.Address
 Sh.Select
End Sub

"Chơi" gì kỳ vậy "Anh Cả"?
Đưa cái "đám rừng" mà không có file làm bằng chứng thì sao mà dò được lỗi gì.
Dò được thì cũng "lòi con mắt".
Private Sub CommandButton2_Click()
Dim mRng As Range, Sh As Worksheet, Rng As Range, Clls As Range
Dim Frame As String
Dim eRw As Long, Station As Double, Min_ As Double, Max_ As Double
Phần trên đâu thấy khai báo Min_1 hay Max_1 đâu, biết file người ta có Option Explicit không?
 
Upvote 0
Chuyện nó là như thế này:

"Chơi" gì kỳ vậy "Anh Cả"?
Đưa cái "đám rừng" mà không có file làm bằng chứng thì sao mà dò được lỗi gì.
. . . . .
Phần trên đâu thấy khai báo Min_1 hay Max_1 đâu, biết file người ta có Option Explicit không?

Mình nhận được thư & trong thư chỉ có vậy nên mới nhờ tới các bạn chớ bộ!

ksanhthi đã viết:
Nhờ bác xem giúp đoạn code này nó báo sai tại dòng Min_1, cám ơn bác nhiều
PHP:
Private Sub CommandButton2_Click()
 ' . . . . . . . . 
 Sh.Select
End Sub
 
Upvote 0
Web KT

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

Back
Top Bottom