ngoctan_q
Thành viên chính thức


- Tham gia
- 15/8/07
- Bài viết
- 52
- Được thích
- 17
Em có bảng tính, nhưng hàm nội suy bị lỗi ko cho giá trị. Các bác giúp em với ạ, em ko rõ VBA copy vào mà nó ko chạy, dù đã enble macro rồi mà vẫn bị lỗi value.
Em xin chân thành cám ơn!
For i = 1 To vungtra.Cells.Count
For i = 1 To vungtra.Rows.Count
For i = 1 To vungtra.Rows.Count-1
Em có bảng tính, nhưng hàm nội suy bị lỗi ko cho giá trị. Các bác giúp em với ạ, em ko rõ VBA copy vào mà nó ko chạy, dù đã enble macro rồi mà vẫn bị lỗi value.
Em xin chân thành cám ơn!
Function noisuy1(vungtra As Range, X As Double, cot As Integer) As Double
Dim ktra As Boolean
Dim i As Integer
Dim x1 As Double, x2 As Double, y1 As Double, y2 As Double
For i = 1 To vungtra.Cells.Count
If vungtra.Cells(i, 1) <= X And vungtra.Cells(i + 1, 1) >= X Then
x1 = vungtra.Cells(i, 1): x2 = vungtra.Cells(i + 1, 1)
y1 = vungtra.Cells(i, cot): y2 = vungtra.Cells(i + 1, cot)
noisuy1 = (y2 - y1) * (X - x1) / (x2 - x1) + y1
Exit For
End If
Next i
End Function
Bạn thêm Exit For vào vòng lặp như sau sẽ ra đúng
PHP:Function noisuy1(vungtra As Range, X As Double, cot As Integer) As Double Dim ktra As Boolean Dim i As Integer Dim x1 As Double, x2 As Double, y1 As Double, y2 As Double For i = 1 To vungtra.Cells.Count If vungtra.Cells(i, 1) <= X And vungtra.Cells(i + 1, 1) >= X Then x1 = vungtra.Cells(i, 1): x2 = vungtra.Cells(i + 1, 1) y1 = vungtra.Cells(i, cot): y2 = vungtra.Cells(i + 1, cot) noisuy1 = (y2 - y1) * (X - x1) / (x2 - x1) + y1 Exit For End If Next i End Function