Chỉ cách truyền tham số cho chương trình chính

Liên hệ QC

phamvandunghp84

Thành viên thường trực
Tham gia
5/3/20
Bài viết
241
Được thích
12
Mình muốn truyền được bến i =15 vào thì phải viết lại như nào mới đúng ? mong các bạn sửa giúp mình:

Sub dung_bien()
Dim i As Integer
Sheets("sheet3").Range("Z" & i).Select

End Sub

Sub chuong_trinh_chinh()
Dim i As Integer
Call chuong_trinh_con

End Sub

Sub chuong_trinh_con(ByVal i As Integer)
i = 15

End Sub
 
Call chuong_trinh_con( i )


Sub chuong_trinh_con(ByRef i As Integer)
 
Call chuong_trinh_con( i )


Sub chuong_trinh_con(ByRef i As Integer)
bạn chỉ mình cụ thể chút được không?

mình chạy như này nhưng nó k ra i =15

Sub chuong_trinh_chinh()
Dim i As Integer
Call chuong_trinh_con(i)
Call dung_bien
End Sub

Sub chuong_trinh_con(ByRef i As Integer)
i = 15
End Sub

Sub dung_bien()
Dim i As Integer
MsgBox ("i = " & i)
Sheets("sheet3").Range("Z" & i).Select
End Sub
 
Khi nói chuyện lập trình, viết tắt chỉ dùng cho tên biến, hàm... Đó là luật của tôi.
Bạn kiểm lại câu hỏi của mình. Hoặc có thể bỉ qua những gì tôi nói và chờ người khác giúp.
 
bạn chỉ mình cụ thể chút được không?

mình chạy như này nhưng nó k ra i =15

Sub chuong_trinh_chinh()
Dim i As Integer
Call chuong_trinh_con(i)
Call dung_bien
End Sub

Sub chuong_trinh_con(ByRef i As Integer)
i = 15
End Sub

Sub dung_bien()
Dim i As Integer
MsgBox ("i = " & i)
Sheets("sheet3").Range("Z" & i).Select
End Sub
Mã:
Sub chuong_trinh_chinh()
Dim i As Integer
Call chuong_trinh_con(i)
Call dung_bien(i)
End Sub

Sub chuong_trinh_con(ByRef i )
i = 15
End Sub

Sub dung_bien(ByRef i)
MsgBox ("i = " & i)
Sheets("sheet3").Range("Z" & i).Select
End Sub
 
Mã:
Sub chuong_trinh_chinh()
Dim i As Integer
Call chuong_trinh_con(i)
Call dung_bien(i)
End Sub

Sub chuong_trinh_con(ByRef i )
i = 15
End Sub

Sub dung_bien(ByRef i)
MsgBox ("i = " & i)
Sheets("sheet3").Range("Z" & i).Select
End Sub
bạn cho mình hỏi mình muốn sau mỗi lần chạy thì tăng i lên vậy mình làm như này cần phải sửa lại như nào? ( mình làm như này nhưng i luôn = 1)

Sub Macro2()
Dim i As Integer
Call Macro3(i)
End Sub

Sub Macro3(ByVal i)
i = i + 1
MsgBox ("i= " & i)
If i > 15 Then
Call Macro4
Else
Application.OnTime Now() + TimeValue("00:00:02"), "Macro2"
End If
End Sub
 
bạn cho mình hỏi mình muốn sau mỗi lần chạy thì tăng i lên vậy mình làm như này cần phải sửa lại như nào? ( mình làm như này nhưng i luôn = 1)

Sub Macro2()
Dim i As Integer
Call Macro3(i)
End Sub

Sub Macro3(ByVal i)
i = i + 1
MsgBox ("i= " & i)
If i > 15 Then
Call Macro4
Else
Application.OnTime Now() + TimeValue("00:00:02"), "Macro2"
End If
End Sub
Chú ý lệnh trong Macro4
Mã:
Dim i As Long

Sub Macro2()
  Call Macro3
End Sub
Sub Macro3()
  i = i + 1
  MsgBox ("i= " & i)
  If i > 15 Then
    Call Macro4
    Else
    Application.OnTime Now() + TimeValue("00:00:02"), "Macro2"
  End If
End Sub
Sub Macro4()
  i = 0
End Sub
 
Web KT

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

Back
Top Bottom