AIDE SUR VBA
bonjour à toutes et à tous,
sur un fichier qui dispose de deux onglets "coutants FCL" et "Offre FCL", j'ai créé un code en VBA qui a pour principe général d'afficher ou de masquer les lignes selon la valeur saisie (cad supérieure à 0), mais, je pense qu'il y a un problème car, après chaque sasie, mon pc "mouline". Pouvez-vous m'aider ? voici le code que j'ai saisi :
Private Sub Worksheet_Change(ByVal Target As Range)
'Macro christophe
If Range("f9") = 0 Then
Sheets("offre FCL").Rows("44:45").Hidden = True
Else: Sheets("offre FCL").Rows("44:45").Hidden = False
End If
If Range("f10") = 0 Then
Sheets("offre FCL").Rows("46:47").Hidden = True
Else: Sheets("offre FCL").Rows("46:47").Hidden = False
End If
If Range("f11") = 0 Then
Sheets("offre FCL").Rows("48:49").Hidden = True
Else: Sheets("offre FCL").Rows("48:49").Hidden = False
End If
If Range("f12") = 0 Then
Sheets("offre FCL").Rows("50:51").Hidden = True
Else: Sheets("offre FCL").Rows("50:51").Hidden = False
End If
If Range("f13") = 0 Then
Sheets("offre FCL").Rows("52:53").Hidden = True
Else: Sheets("offre FCL").Rows("52:53").Hidden = False
End If
If Range("f14") = 0 Then
Sheets("offre FCL").Rows("54:55").Hidden = True
Else: Sheets("offre FCL").Rows("54:55").Hidden = False
End If
If Range("f15") = 0 Then
Sheets("offre FCL").Rows("56:57").Hidden = True
Else: Sheets("offre FCL").Rows("56:57").Hidden = False
End If
If Range("f16") = 0 Then
Sheets("offre FCL").Rows("58:59").Hidden = True
Else: Sheets("offre FCL").Rows("58:59").Hidden = False
End If
If Range("f17") = 0 Then
Sheets("offre FCL").Rows("60:61").Hidden = True
Else: Sheets("offre FCL").Rows("60:61").Hidden = False
End If
If Range("c7") = "OUI" Then
Sheets("offre FCL").Rows("44:61").Hidden = True
Else: Sheets("offre FCL").Rows("42:43").Hidden = True
End If
If Range("f19") = 0 Then
Sheets("offre FCL").Rows("64:65").Hidden = True
Else: Sheets("offre FCL").Rows("64:65").Hidden = False
End If
If Range("f20") = 0 Then
Sheets("offre FCL").Rows("66:67").Hidden = True
Else: Sheets("offre FCL").Rows("66:67").Hidden = False
End If
If Range("f21") = 0 Then
Sheets("offre FCL").Rows("68:69").Hidden = True
Else: Sheets("offre FCL").Rows("68:69").Hidden = False
End If
If Range("f22") = 0 Then
Sheets("offre FCL").Rows("70:71").Hidden = True
Else: Sheets("offre FCL").Rows("70:71").Hidden = False
End If
If Range("f23") = 0 Then
Sheets("offre FCL").Rows("72:73").Hidden = True
Else: Sheets("offre FCL").Rows("72:73").Hidden = False
End If
If Range("f24") = 0 Then
Sheets("offre FCL").Rows("74:75").Hidden = True
Else: Sheets("offre FCL").Rows("74:75").Hidden = False
End If
If Range("c18") = "OUI" Then
Sheets("offre FCL").Rows("64:75").Hidden = True
Else: Sheets("offre FCL").Rows("62:63").Hidden = True
End If
If Range("f26") = 0 Then
Sheets("offre FCL").Rows("78:79").Hidden = True
Else: Sheets("offre FCL").Rows("78:79").Hidden = False
End If
If Range("f27") = 0 Then
Sheets("offre FCL").Rows("80:81").Hidden = True
Else: Sheets("offre FCL").Rows("80:81").Hidden = False
End If
If Range("f28") = 0 Then
Sheets("offre FCL").Rows("82:83").Hidden = True
Else: Sheets("offre FCL").Rows("82:83").Hidden = False
End If
If Range("f29") = 0 Then
Sheets("offre FCL").Rows("84:85").Hidden = True
Else: Sheets("offre FCL").Rows("84:85").Hidden = False
End If
If Range("f30") = 0 Then
Sheets("offre FCL").Rows("86:87").Hidden = True
Else: Sheets("offre FCL").Rows("86:87").Hidden = False
End If
If Range("f31") = 0 Then
Sheets("offre FCL").Rows("88:89").Hidden = True
Else: Sheets("offre FCL").Rows("88:89").Hidden = False
End If
If Range("f32") = 0 Then
Sheets("offre FCL").Rows("90:91").Hidden = True
Else: Sheets("offre FCL").Rows("90:91").Hidden = False
End If
If Range("f33") = 0 Then
Sheets("offre FCL").Rows("92:93").Hidden = True
Else: Sheets("offre FCL").Rows("92:93").Hidden = False
End If
If Range("f34") = 0 Then
Sheets("offre FCL").Rows("94:95").Hidden = True
Else: Sheets("offre FCL").Rows("94:95").Hidden = False
End If
If Range("f35") = 0 Then
Sheets("offre FCL").Rows("96:97").Hidden = True
Else: Sheets("offre FCL").Rows("96:97").Hidden = False
End If
If Range("c25") = "OUI" Then
Sheets("offre FCL").Rows("78:97").Hidden = True
Else: Sheets("offre FCL").Rows("76:77").Hidden = True
End If
If Range("f44") = 0 Then
Sheets("offre FCL").Rows("103:104").Hidden = True
Else: Sheets("offre FCL").Rows("103:104").Hidden = False
End If
If Range("f45") = 0 Then
Sheets("offre FCL").Rows("105:106").Hidden = True
Else: Sheets("offre FCL").Rows("105:106").Hidden = False
End If
If Range("f46") = 0 Then
Sheets("offre FCL").Rows("107:108").Hidden = True
Else: Sheets("offre FCL").Rows("107:108").Hidden = False
End If
If Range("f47") = 0 Then
Sheets("offre FCL").Rows("109:110").Hidden = True
Else: Sheets("offre FCL").Rows("109:110").Hidden = False
End If
If Range("f48") = 0 Then
Sheets("offre FCL").Rows("111:112").Hidden = True
Else: Sheets("offre FCL").Rows("111:112").Hidden = False
End If
If Range("f49") = 0 Then
Sheets("offre FCL").Rows("113:114").Hidden = True
Else: Sheets("offre FCL").Rows("113:113").Hidden = False
End If
If Range("f50") = 0 Then
Sheets("offre FCL").Rows("115:116").Hidden = True
Else: Sheets("offre FCL").Rows("115:116").Hidden = False
End If
If Range("f51") = 0 Then
Sheets("offre FCL").Rows("117:118").Hidden = True
Else: Sheets("offre FCL").Rows("117:118").Hidden = False
End If
If Range("f52") = 0 Then
Sheets("offre FCL").Rows("119:120").Hidden = True
Else: Sheets("offre FCL").Rows("119:120").Hidden = False
End If
If Range("f55") = 0 Then
Sheets("offre FCL").Rows("101:102").Hidden = True
Else: Sheets("offre FCL").Rows("101:102").Hidden = False
End If
If Range("c56") = "OUI" Then
Sheets("offre FCL").Rows("101:120").Hidden = True
Else: Sheets("offre FCL").Rows("121:122").Hidden = True
End If
If Range("f65") = 0 Then
Sheets("offre FCL").Rows("128:129").Hidden = True
Else: Sheets("offre FCL").Rows("128:129").Hidden = False
End If
If Range("f66") = 0 Then
Sheets("offre FCL").Rows("130:131").Hidden = True
Else: Sheets("offre FCL").Rows("130:131").Hidden = False
End If
If Range("f67") = 0 Then
Sheets("offre FCL").Rows("132:133").Hidden = True
Else: Sheets("offre FCL").Rows("132:133").Hidden = False
End If
If Range("f68") = 0 Then
Sheets("offre FCL").Rows("134:135").Hidden = True
Else: Sheets("offre FCL").Rows("134:135").Hidden = False
End If
If Range("f69") = 0 Then
Sheets("offre FCL").Rows("136:137").Hidden = True
Else: Sheets("offre FCL").Rows("136:137").Hidden = False
End If
If Range("f70") = 0 Then
Sheets("offre FCL").Rows("138:139").Hidden = True
Else: Sheets("offre FCL").Rows("138:139").Hidden = False
End If
If Range("f71") = 0 Then
Sheets("offre FCL").Rows("140:141").Hidden = True
Else: Sheets("offre FCL").Rows("140:141").Hidden = False
End If
If Range("f72") = 0 Then
Sheets("offre FCL").Rows("142:143").Hidden = True
Else: Sheets("offre FCL").Rows("142:143").Hidden = False
End If
If Range("f74") = 0 Then
Sheets("offre FCL").Rows("144:145").Hidden = True
Else: Sheets("offre FCL").Rows("144:145").Hidden = False
End If
If Range("f75") = 0 Then
Sheets("offre FCL").Rows("146:147").Hidden = True
Else: Sheets("offre FCL").Rows("146:147").Hidden = False
End If
If Range("f76") = 0 Then
Sheets("offre FCL").Rows("148:149").Hidden = True
Else: Sheets("offre FCL").Rows("148:149").Hidden = False
End If
If Range("f77") = 0 Then
Sheets("offre FCL").Rows("150:151").Hidden = True
Else: Sheets("offre FCL").Rows("150:151").Hidden = False
End If
If Range("f78") = 0 Then
Sheets("offre FCL").Rows("152:153").Hidden = True
Else: Sheets("offre FCL").Rows("152:153").Hidden = False
End If
If Range("f79") = 0 Then
Sheets("offre FCL").Rows("154:155").Hidden = True
Else: Sheets("offre FCL").Rows("154:155").Hidden = False
End If
If Range("f80") = 0 Then
Sheets("offre FCL").Rows("156:157").Hidden = True
Else: Sheets("offre FCL").Rows("156:157").Hidden = False
End If
If Range("f81") = 0 Then
Sheets("offre FCL").Rows("158:159").Hidden = True
Else: Sheets("offre FCL").Rows("158:159").Hidden = False
End If
If Range("f82") = 0 Then
Sheets("offre FCL").Rows("160:161").Hidden = True
Else: Sheets("offre FCL").Rows("160:161").Hidden = False
End If
If Range("c85") = "OUI" Then
Sheets("offre FCL").Rows("126:161").Hidden = True
Else: Sheets("offre FCL").Rows("162:163").Hidden = True
End If
End Sub
merci de vos commentaires avisés
Bonjour,
Eh ben...
Euh, la balise Code, c'est pas en option....
J'ai un "peu" modifié ton code...
Regarde, et dis quoi...
Private Sub Worksheet_Change(ByVal Target As Range)
With Application
.EnableEvents = False
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With
With Sheets("offre FCL")
.Rows("44:45").Hidden = Range("f9") = 0
.Rows("46:47").Hidden = Range("f10") = 0
.Rows("48:49").Hidden = Range("f11") = 0
.Rows("50:51").Hidden = Range("f12") = 0
.Rows("52:53").Hidden = Range("f13") = 0
.Rows("54:55").Hidden = Range("f14") = 0
.Rows("56:57").Hidden = Range("f15") = 0
.Rows("58:59").Hidden = Range("f16") = 0
.Rows("60:61").Hidden = Range("f17") = 0
.Rows("44:61").Hidden = Range("c7") = "OUI"
.Rows("42:43").Hidden = Range("c7") <> "OUI"
.Rows("64:65").Hidden = Range("f19") = 0
.Rows("66:67").Hidden = Range("f20") = 0
.Rows("68:69").Hidden = Range("f21") = 0
.Rows("70:71").Hidden = Range("f22") = 0
.Rows("72:73").Hidden = Range("f23") = 0
.Rows("74:75").Hidden = Range("f24") = 0
.Rows("64:75").Hidden = Range("c18") = "OUI"
.Rows("62:63").Hidden = Range("c18") <> "OUI"
.Rows("78:79").Hidden = Range("f26") = 0
.Rows("80:81").Hidden = Range("f27") = 0
.Rows("82:83").Hidden = Range("f28") = 0
.Rows("84:85").Hidden = Range("f29") = 0
.Rows("86:87").Hidden = Range("f30") = 0
.Rows("88:89").Hidden = Range("f31") = 0
.Rows("90:91").Hidden = Range("f32") = 0
.Rows("92:93").Hidden = Range("f33") = 0
.Rows("94:95").Hidden = Range("f34") = 0
.Rows("96:97").Hidden = Range("f35") = 0
.Rows("78:97").Hidden = Range("c25") = "OUI"
.Rows("76:77").Hidden = Range("c25") <> "OUI"
.Rows("103:104").Hidden = Range("f44") = 0
.Rows("105:106").Hidden = Range("f45") = 0
.Rows("107:108").Hidden = Range("f46") = 0
.Rows("109:110").Hidden = Range("f47") = 0
.Rows("111:112").Hidden = Range("f48") = 0
.Rows("113:114").Hidden = Range("f49") = 0
.Rows("115:116").Hidden = Range("f50") = 0
.Rows("117:118").Hidden = Range("f51") = 0
.Rows("119:120").Hidden = Range("f52") = 0
.Rows("101:102").Hidden = Range("f55") = 0
.Rows("101:120").Hidden = Range("c56") = "OUI"
.Rows("121:122").Hidden = Range("c56") <> "OUI"
.Rows("128:129").Hidden = Range("f65") = 0
.Rows("130:131").Hidden = Range("f66") = 0
.Rows("132:133").Hidden = Range("f67") = 0
.Rows("134:135").Hidden = Range("f68") = 0
.Rows("136:137").Hidden = Range("f69") = 0
.Rows("138:139").Hidden = Range("f70") = 0
.Rows("140:141").Hidden = Range("f71") = 0
.Rows("142:143").Hidden = Range("f72") = 0
.Rows("144:145").Hidden = Range("f74") = 0
.Rows("146:147").Hidden = Range("f75") = 0
.Rows("148:149").Hidden = Range("f76") = 0
.Rows("150:151").Hidden = Range("f77") = 0
.Rows("152:153").Hidden = Range("f78") = 0
.Rows("154:155").Hidden = Range("f79") = 0
.Rows("156:157").Hidden = Range("f80") = 0
.Rows("158:159").Hidden = Range("f81") = 0
.Rows("160:161").Hidden = Range("f82") = 0
.Rows("126:161").Hidden = Range("c85") = "OUI"
.Rows("162:163").Hidden = Range("c85") <> "OUI"
End With
With Application
.EnableEvents = True
.ScreenUpdating = True
.Calculation = xlCalculationAutomatic
End With
End SubBon courage
bonjour
tout d'abord, merci pour le code, j'ai fait le test, cela ne marche qu'avec les conditions avec oui sinon pour les autres que la valeur saisie soit 0 ou supérieure à 0, les lignes apparaissent toujours
le principe est le suivant la ligne s'affiche si la valeur correspondante saisie dans l'onglet coutants fcl est supérieure à O sinon la ligne est masquée
amicalement
chb
Re-,
OK,
Remets comme ceci, au niveau des "OUI" :
If Range("c7") = "OUI" Then
.Rows("44:61").Hidden = True
Else
.Rows("42:43").Hidden = True
End IfA noter que si la cellule est vide, la condition = 0 est respectée, donc les lignes se masquent...
Bon dimanche
bonjour
je viens de faire le test, sur mon pc familial, ça marche du tonnerre !! sur mon pc professionnel, ça mouline toujours
je vérifie ça au bureau pour mon pc pro
en tout cas, merci pour l'aide
bonne journée
bonsoir
j'ai modifié le code comme cité dans le message précédent, tout fonctionnait parfaitement
sur l'onglet offre FCL, j'ai ajouté des mises en forme conditionnelles et depuis, le fichier mouline dès que l'on saisie une donnée sur l'onglet coutants FCL. je vous ai joint le fichier concerné
quelqu'un peut-il m'aider ?
a vous lire