Problème de code - remplir une colonne 3 conditions
Résolu/Fermé
saxo91
Messages postés
33
Date d'inscription
lundi 19 octobre 2015
Statut
Membre
Dernière intervention
17 octobre 2023
-
10 oct. 2016 à 14:50
saxo91 Messages postés 33 Date d'inscription lundi 19 octobre 2015 Statut Membre Dernière intervention 17 octobre 2023 - 11 oct. 2016 à 05:09
saxo91 Messages postés 33 Date d'inscription lundi 19 octobre 2015 Statut Membre Dernière intervention 17 octobre 2023 - 11 oct. 2016 à 05:09
A voir également:
- Problème de code - remplir une colonne 3 conditions
- Déplacer une colonne excel - Guide
- Formule somme excel colonne - Guide
- Code ascii de a - Guide
- Trier colonne excel - Guide
- Code puk bloqué - Guide
4 réponses
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
10 oct. 2016 à 15:15
10 oct. 2016 à 15:15
Bonjour,
Remplacer 100 par dernière ligne :
https://forums.commentcamarche.net/forum/affich-37622001-vba-detection-de-cellule-vide-ligne-colonnne
Remplacer 100 par dernière ligne :
https://forums.commentcamarche.net/forum/affich-37622001-vba-detection-de-cellule-vide-ligne-colonnne
saxo91
Messages postés
33
Date d'inscription
lundi 19 octobre 2015
Statut
Membre
Dernière intervention
17 octobre 2023
1
10 oct. 2016 à 16:50
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. 😊
Utilisateur anonyme
10 oct. 2016 à 17:09
10 oct. 2016 à 17:09
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
Messages postés
33
Date d'inscription
lundi 19 octobre 2015
Statut
Membre
Dernière intervention
17 octobre 2023
1
11 oct. 2016 à 05:09
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.