Problème de code - remplir une colonne 3 conditions
Résolu/Fermé
saxo91
saxo91
- Messages postés
- 30
- Date d'inscription
- lundi 19 octobre 2015
- Statut
- Membre
- Dernière intervention
- 16 mai 2022
saxo91
- Messages postés
- 30
- Date d'inscription
- lundi 19 octobre 2015
- Statut
- Membre
- Dernière intervention
- 16 mai 2022
A voir également:
- Problème de code - remplir une colonne 3 conditions
- Problème de code - remplir une colonne 3 conditions ✓ - Forum - VB / VBA
- Afficher bon si trois conditions sont remplies dans une colonne ✓ - Forum - Excel
- Somme.si.ens avec 3 conditions... 2 en colonnes et une en ligne ✓ - Forum - Excel
- Comment remplir un tableau avec 3 conditions ? ✓ - Forum - Excel
- Remplir une case selon 3 conditions ✓ - Forum - Excel
4 réponses
cs_Le Pivert
10 oct. 2016 à 15:15
- Messages postés
- 7784
- Date d'inscription
- jeudi 13 septembre 2007
- Statut
- Contributeur
- Dernière intervention
- 24 juin 2022
10 oct. 2016 à 15:15
Bonjour,
Remplacer 100 par dernière ligne :
https://www.commentcamarche.net/faq/32220-vba-toutes-versions-detection-de-cellule-vide-ligne-colonne
Remplacer 100 par dernière ligne :
https://www.commentcamarche.net/faq/32220-vba-toutes-versions-detection-de-cellule-vide-ligne-colonne
saxo91
10 oct. 2016 à 16:50
- Messages postés
- 30
- Date d'inscription
- lundi 19 octobre 2015
- Statut
- Membre
- Dernière intervention
- 16 mai 2022
10 oct. 2016 à 16:50
Bonjour cs_Le pivert
Merci de ta réponse, je suis allé lire et j'y arrive presque mais je ne comprend pas pourquoi il s'arrête avant la fin.
Mon code :
Sub entete()
Dim DernCol As Integer
DernCol = Cells(4, Cells.Columns.Count).End(xlToLeft).Column
For i = 1 To DernCol
If Cells(i, 4).Value = "" Then Cells(i, 1).Value = "E"
Next i
For i = 1 To DernCol
If Cells(i, 4).Value > 0 Then Cells(i, 1).Value = "D"
Next i
End Sub
Il s’arrête à la 17ème ligne ...
Alors que la dernière est la 22ème ligne
Si tu as un truc pour m'orienter ...
Merci
Merci de ta réponse, je suis allé lire et j'y arrive presque mais je ne comprend pas pourquoi il s'arrête avant la fin.
Mon code :
Sub entete()
Dim DernCol As Integer
DernCol = Cells(4, Cells.Columns.Count).End(xlToLeft).Column
For i = 1 To DernCol
If Cells(i, 4).Value = "" Then Cells(i, 1).Value = "E"
Next i
For i = 1 To DernCol
If Cells(i, 4).Value > 0 Then Cells(i, 1).Value = "D"
Next i
End Sub
Il s’arrête à la 17ème ligne ...
Alors que la dernière est la 22ème ligne
Si tu as un truc pour m'orienter ...
Merci
Bonjour Louisa,
Tu utilises DernCol pour Dernière Colonne ! et .Column pour Colonne !
Alors qu'il te faut la dernière ligne ! Regardes plutôt mon message #3
ci-dessous. Cordialement. 😊
PS : Bonjour à cs_Le Pivert en passant. Cordialement. 😊
Bonjour Louisa,
Je te propose ce code VBA :
Cas 1 : si Cells(lig, 9) > 0 est vrai, valeur retournée : -1 ;
donc 69 + (-1) = 69 - 1 = 68 et Chr$(68) retourne "D".
Cas 2 : si Cells(lig, 9) > 0 est faux, valeur retournée : 0 ;
donc 69 + 0 = 69 et Chr$(69) retourne "E".
Tu auras noté, bien sûr, que :
a) Une seule boucle For .. Next est nécessaire.
b) Un seul test "> 0" est nécessaire.
Si ton problème est réglé, merci d'aller en haut de page
pour cliquer sur « Marquer comme résolu ».
Cordialement. 😊
Je te propose ce code VBA :
Option Explicit Sub entete() Dim dlig As Long, lig As Long ' calcul de la dernière ligne, selon la colonne I dlig = Range("I" & Rows.Count).End(xlUp).Row For lig = 1 To dlig Cells(lig, 1) = Chr$(69 + (Cells(lig, 9) > 0)) Next lig End Sub
Cas 1 : si Cells(lig, 9) > 0 est vrai, valeur retournée : -1 ;
donc 69 + (-1) = 69 - 1 = 68 et Chr$(68) retourne "D".
Cas 2 : si Cells(lig, 9) > 0 est faux, valeur retournée : 0 ;
donc 69 + 0 = 69 et Chr$(69) retourne "E".
Tu auras noté, bien sûr, que :
a) Une seule boucle For .. Next est nécessaire.
b) Un seul test "> 0" est nécessaire.
Si ton problème est réglé, merci d'aller en haut de page
pour cliquer sur « Marquer comme résolu ».
Cordialement. 😊
saxo91
11 oct. 2016 à 05:09
- Messages postés
- 30
- Date d'inscription
- lundi 19 octobre 2015
- Statut
- Membre
- Dernière intervention
- 16 mai 2022
11 oct. 2016 à 05:09
Bonjour Alban,
Parfait, ça fonctionne parfaitement ! je te remercie, car j'a compris !!
Et plus encore pour les explications.
Cela ma forcé a retourner voir la table de caractère code ...
Je te remercie encore !
Bonne journée.
Parfait, ça fonctionne parfaitement ! je te remercie, car j'a compris !!
Et plus encore pour les explications.
Cela ma forcé a retourner voir la table de caractère code ...
Je te remercie encore !
Bonne journée.