[VBA] , end if sans bloc if
S
Sitting_bullMembre fidèle
- Messages
- 260
- Excel
- Microsoft 365
- Inscrit
- 27/10/2022
- Emploi
- Expert technique réseau
Bonjour à tous, erreur je pense que certains arriveront à corriger sans problème mais à force d'avoir la tête dedans impossible de savoir à quel niveau j'ai cette erreur.
Merci
Private Sub createbt_Click()
Dim i As Long
'si sublan est vide je ne fais rien
If Me.sublan24 = "" Then
Else
'si sublan n'est pas vide et lantype=LBH alors
If lantype = "LBH" Then
With TS_lan
i = Application.Match(Me.sublan24, .ListColumns("Subnet IP").DataBodyRange, 0)
.ListRows(i).Range.Interior.ColorIndex = 43
.ListColumns("Designation").DataBodyRange(i) = Me.descriplan
.ListColumns("VLAN").DataBodyRange(i) = Val(Me.vlanlan)
.ListColumns("Commentaire").DataBodyRange(i) = Me.commfinal3 & "Sans SNAT (LB en GW)"
End With
Dim Ligne_Inser
With TS_spine
Set Ligne_Inser = .ListRows.Add: i = Ligne_Inser.index
Ligne_Inser.Range.Interior.ColorIndex = 43
.DataBodyRange(i, "A") = Me.vrflan
.DataBodyRange(i, "M") = Me.vlanlan
.DataBodyRange(i, "K") = Me.descriplan
.DataBodyRange(i, "O") = Me.descriplan
.DataBodyRange(i, "H") = Me.sublan24
.DataBodyRange(i, "E") = Me.commfinal3
.DataBodyRange(i, "C") = Me.vpninst
.DataBodyRange(i, "B") = "V" & Me.vrflan
.DataBodyRange(i, "G") = "Compute sans SNAT (LB en GW)"
.DataBodyRange(i, "N") = "0" & Me.vlanlan
.DataBodyRange(i, "L") = ""
.DataBodyRange(i, "S") = ""
.DataBodyRange(i, "T") = ""
.DataBodyRange(i, "U") = ""
.DataBodyRange(i, "V") = ""
.DataBodyRange(i, "W") = ""
If dhcp.Value = True Then
.DataBodyRange(i, "AD") = "10.5.230.48"
.DataBodyRange(i, "AE") = "Serveur DHCP UNIX"
.DataBodyRange(i, "AF") = "10.5.224.13"
.DataBodyRange(i, "AG") = "Serveur DHCP SOLARIS 10"
.DataBodyRange(i, "AH") = "10.5.224.13"
.DataBodyRange(i, "AI") = "Serveur DHCP SOLARIS 11"
Else
End If
End With
With TS_L2
Set Ligne_Inser = .ListRows.Add: i = Ligne_Inser.index
Ligne_Inser.Range.Interior.ColorIndex = 43
.DataBodyRange(i, "A") = "0" & Me.vlanlan
.DataBodyRange(i, "B") = Me.descriplan
.DataBodyRange(i, "C") = "Compute sans SNAT (LB en GW)"
.DataBodyRange(i, "D") = "oui"
.DataBodyRange(i, "E") = "oui"
.DataBodyRange(i, "F") = "non"
.DataBodyRange(i, "G") = "oui"
.DataBodyRange(i, "H") = "non"
End With
With TS_orion
Set Ligne_Inser = .ListRows.Add: i = Ligne_Inser.index
Ligne_Inser.Range.Interior.ColorIndex = 43
.DataBodyRange(i, "A") = "0" & Me.vlanlan
.DataBodyRange(i, "C") = "0" & Me.vlanlan
.DataBodyRange(i, "D") = "0" & Me.vlanlan
.DataBodyRange(i, "E") = "0" & Me.vlanlan
.DataBodyRange(i, "B") = Me.descriplan
.DataBodyRange(i, "F") = Me.descriplan
.DataBodyRange(i, "G") = Me.commfinal3
.DataBodyRange(i, "H") = "oui"
.DataBodyRange(i, "I") = "oui"
.DataBodyRange(i, "J") = "non"
.DataBodyRange(i, "K") = "non"
End With
With TS_lb
Set Ligne_Inser = .ListRows.Add: i = Ligne_Inser.index
Ligne_Inser.Range.Interior.ColorIndex = 43
.DataBodyRange(i, "A") = Me.vrflan & Me.vpninst
.DataBodyRange(i, "C") = Me.vrflan & Me.vpninst
.DataBodyRange(i, "D") = Me.descriplan
.DataBodyRange(i, "E") = Me.vlanlan
.DataBodyRange(i, "K") = ""
.DataBodyRange(i, "L") = ""
.DataBodyRange(i, "M") = ""
If MultiPage1.Value + 1 < MultiPage1.Pages.Count Then MultiPage1.Value = MultiPage1.Value + 1
End If
Call Tri_macro
'si lantype est différent de LBH alors j'applique le code suivant
Else
With TS_lan
i = Application.Match(Me.sublan24, .ListColumns("Subnet IP").DataBodyRange, 0)
.ListRows(i).Range.Interior.ColorIndex = 43
.ListColumns("Designation").DataBodyRange(i) = Me.descriplan
.ListColumns("VLAN").DataBodyRange(i) = Val(Me.vlanlan)
.ListColumns("Commentaire").DataBodyRange(i) = Me.commfinal3
End With
Dim Ligne_Inser
With TS_spine
Set Ligne_Inser = .ListRows.Add: i = Ligne_Inser.index
Ligne_Inser.Range.Interior.ColorIndex = 43
.DataBodyRange(i, "A") = Me.vrflan
.DataBodyRange(i, "M") = Me.vlanlan
.DataBodyRange(i, "K") = Me.descriplan
.DataBodyRange(i, "O") = Me.descriplan
.DataBodyRange(i, "H") = Me.sublan24
.DataBodyRange(i, "E") = Me.commfinal3
.DataBodyRange(i, "C") = Me.vpninst
.DataBodyRange(i, "B") = "V" & Me.vrflan
.DataBodyRange(i, "G") = Me.commfinal3
.DataBodyRange(i, "N") = "0" & Me.vlanlan
.DataBodyRange(i, "L") = "undo shutdown"
If dhcp.Value = True Then
.DataBodyRange(i, "AD") = "10.5.230.48"
.DataBodyRange(i, "AE") = "Serveur DHCP UNIX"
.DataBodyRange(i, "AF") = "10.5.224.13"
.DataBodyRange(i, "AG") = "Serveur DHCP SOLARIS 10"
.DataBodyRange(i, "AH") = "10.5.224.13"
.DataBodyRange(i, "AI") = "Serveur DHCP SOLARIS 11"
Else
End If
End With
With TS_L2
Set Ligne_Inser = .ListRows.Add: i = Ligne_Inser.index
Ligne_Inser.Range.Interior.ColorIndex = 43
.DataBodyRange(i, "A") = "0" & Me.vlanlan
.DataBodyRange(i, "B") = Me.descriplan
.DataBodyRange(i, "C") = Me.commfinal3
.DataBodyRange(i, "D") = "oui"
.DataBodyRange(i, "E") = "oui"
.DataBodyRange(i, "F") = "non"
.DataBodyRange(i, "G") = "oui"
.DataBodyRange(i, "H") = "non"
End With
With TS_orion
Set Ligne_Inser = .ListRows.Add: i = Ligne_Inser.index
Ligne_Inser.Range.Interior.ColorIndex = 43
.DataBodyRange(i, "A") = "0" & Me.vlanlan
.DataBodyRange(i, "C") = "0" & Me.vlanlan
.DataBodyRange(i, "D") = "0" & Me.vlanlan
.DataBodyRange(i, "E") = "0" & Me.vlanlan
.DataBodyRange(i, "B") = Me.descriplan
.DataBodyRange(i, "F") = Me.descriplan
.DataBodyRange(i, "G") = Me.commfinal3
.DataBodyRange(i, "H") = "oui"
.DataBodyRange(i, "I") = "oui"
.DataBodyRange(i, "J") = "non"
.DataBodyRange(i, "K") = "non"
End With
If MultiPage1.Value + 1 < MultiPage1.Pages.Count Then MultiPage1.Value = MultiPage1.Value + 1
End If
Call Tri_macro
End If
End If
End SubBonjour,
A 1ère vue, remplace les 2 End If par End With juste devant les lignes "Call Tri_macro"
Sans filets...
S
Sitting_bullMembre fidèle
- Messages
- 260
- Excel
- Microsoft 365
- Inscrit
- 27/10/2022
- Emploi
- Expert technique réseau
Salut Camarade!
Il semblerait que ce soit bien cela puisque cela fonctionne!
Gracias
Bonjour, Par contre si tu ne fais rien quand c'est vide alors sortir de la macro non ?
Dim i As Long
'si sublan est vide je ne fais rien
If Me.sublan24 = "" Then
Exit sub
ElseS
Sitting_bullMembre fidèle
- Messages
- 260
- Excel
- Microsoft 365
- Inscrit
- 27/10/2022
- Emploi
- Expert technique réseau
@Xmenpl milles excuses pour ma réponse tardive. Je viens seulement de la voir! Effectivement cela est une idée. Débutant, j'avoue ne pas maitrisé encore assez toutes les subtilités. Merci pour cette remarque pertinente