VBA : ComboBox 在 IF THEN ELSE 函数中的值
VBA : the value from ComboBox in IF THEN ELSE function
我是 VBA 的新手。我想比较 ComboBox 的值,例如:
使用我的 sheet 的值:
你能告诉我我的代码是否正确吗?结果是正确的,但我想确保我的函数缩进正确。我的代码是:
Public Sub INFO_PROTO(ByRef strQ As String)
Num_Ligne = Range("Chapeau_Partenaire").Row + 1
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_CMA_Origine") = "1"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_Perf_Contrat_et_Orient") = "0"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_CMA_Perf_An") = "0"
While Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Chapeau_Partenaire").Column) <> ""
Do While strQ = Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Chapeau_Partenaire").Column) And Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Parametrage").Column) = "1"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_CMA_Origine") = "1"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_Perf_Contrat_et_Orient") = "1"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_CMA_Perf_An") = "1"
Num_Ligne = Num_Ligne + 1
Loop
Num_Ligne = Num_Ligne + 1
Wend
End Sub
为了更清晰的视图,如果您更喜欢尝试在单行代码太长时使用换行符:
Public Sub INFO_PROTO(ByRef strQ As String)
Num_Ligne = Range("Chapeau_Partenaire").Row + 1
With Worksheets("1 - Feuille de Suivi Commercial")
.Range("Calcul_CMA_Origine") = "1"
.Range("Calcul_Perf_Contrat_et_Orient") = "0"
.Range("Calcul_CMA_Perf_An") = "0"
While Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Chapeau_Partenaire").Column) <> ""
Do While strQ = Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Chapeau_Partenaire").Column) And _
Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Parametrage").Column) = "1"
.Range("Calcul_CMA_Origine") = "1"
.Range("Calcul_Perf_Contrat_et_Orient") = "1"
.Range("Calcul_CMA_Perf_An") = "1"
Num_Ligne = Num_Ligne + 1
Loop
Num_Ligne = Num_Ligne + 1
Wend
End With
End Sub
我是 VBA 的新手。我想比较 ComboBox 的值,例如:
使用我的 sheet 的值:
你能告诉我我的代码是否正确吗?结果是正确的,但我想确保我的函数缩进正确。我的代码是:
Public Sub INFO_PROTO(ByRef strQ As String)
Num_Ligne = Range("Chapeau_Partenaire").Row + 1
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_CMA_Origine") = "1"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_Perf_Contrat_et_Orient") = "0"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_CMA_Perf_An") = "0"
While Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Chapeau_Partenaire").Column) <> ""
Do While strQ = Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Chapeau_Partenaire").Column) And Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Parametrage").Column) = "1"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_CMA_Origine") = "1"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_Perf_Contrat_et_Orient") = "1"
Worksheets("1 - Feuille de Suivi Commercial").Range("Calcul_CMA_Perf_An") = "1"
Num_Ligne = Num_Ligne + 1
Loop
Num_Ligne = Num_Ligne + 1
Wend
End Sub
为了更清晰的视图,如果您更喜欢尝试在单行代码太长时使用换行符:
Public Sub INFO_PROTO(ByRef strQ As String)
Num_Ligne = Range("Chapeau_Partenaire").Row + 1
With Worksheets("1 - Feuille de Suivi Commercial")
.Range("Calcul_CMA_Origine") = "1"
.Range("Calcul_Perf_Contrat_et_Orient") = "0"
.Range("Calcul_CMA_Perf_An") = "0"
While Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Chapeau_Partenaire").Column) <> ""
Do While strQ = Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Chapeau_Partenaire").Column) And _
Worksheets("6 - Liste des Partenaires").Cells(Num_Ligne, Range("Parametrage").Column) = "1"
.Range("Calcul_CMA_Origine") = "1"
.Range("Calcul_Perf_Contrat_et_Orient") = "1"
.Range("Calcul_CMA_Perf_An") = "1"
Num_Ligne = Num_Ligne + 1
Loop
Num_Ligne = Num_Ligne + 1
Wend
End With
End Sub