Recherche de l'aide pour excel 2007 VBA
Résolu/Fermé
A voir également:
- Recherche de l'aide pour excel 2007 VBA
- Liste déroulante excel - Guide
- Formule excel - Guide
- Recherche musique - Guide
- Save as pdf office 2007 - Télécharger - Bureautique
- Si et excel - Guide
10 réponses
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
18 mars 2009 à 22:32
18 mars 2009 à 22:32
Salut,
Lorsque je saisie la date directement dans le tableau excel, la mise en forme conditonnelle fonctionne.
En ce cas on a les étapes
- sélection de la cellule
- écriture dan la cellule
- tu appuies sur ENTRER pour valider et la mise en forme conditionnelle est verifiée
Lorsque je saisie la date dans l'userform et qu'elle est transférée dans la tableau excel par VBA, la mise en forme conditionnelle ne fonctionne pas.
En ce cas on a les étapes
- tu écris dans userform
- le résultat est transmis dans la cellule
Il n'y a aucun événement qui peut enclencher la mise en forme conditionnelle
Deux pistes peut être :
1. Tu sélectionnes la cellule avant d'écrire et ensuite avec sendkeys tu simules l'appui sur la touche ENTRER
2. La valeur saisie dans userform tu la stocke dans une variable globale et tu l'écrit dans la cellue en utilisant la procédure événementielle
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Lorsque je saisie la date directement dans le tableau excel, la mise en forme conditonnelle fonctionne.
En ce cas on a les étapes
- sélection de la cellule
- écriture dan la cellule
- tu appuies sur ENTRER pour valider et la mise en forme conditionnelle est verifiée
Lorsque je saisie la date dans l'userform et qu'elle est transférée dans la tableau excel par VBA, la mise en forme conditionnelle ne fonctionne pas.
En ce cas on a les étapes
- tu écris dans userform
- le résultat est transmis dans la cellule
Il n'y a aucun événement qui peut enclencher la mise en forme conditionnelle
Deux pistes peut être :
1. Tu sélectionnes la cellule avant d'écrire et ensuite avec sendkeys tu simules l'appui sur la touche ENTRER
2. La valeur saisie dans userform tu la stocke dans une variable globale et tu l'écrit dans la cellue en utilisant la procédure événementielle
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
18 mars 2009 à 23:11
18 mars 2009 à 23:11
Salut,
Teste ce fichier https://www.cjoint.com/?duxlzP0LH2 (il fonctionne sur Excel 2002)
Teste ce fichier https://www.cjoint.com/?duxlzP0LH2 (il fonctionne sur Excel 2002)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
18 mars 2009 à 23:42
18 mars 2009 à 23:42
Re,
Tu peux envoyer ton fichier pour voir.
Tu peux envoyer ton fichier pour voir.
je ne sais pas si tu arriveras à l'ouvrir...
file:///C:/Users/Laura/Documents/licence%20pro%20admr/projet%20gestion%20de%20stock/gestion%20des%20stocks/Programme%20de%20gestion%20des%20stocks/Nouveau%20produit.htm
je l'ai enregistré en format web sous 2007
file:///C:/Users/Laura/Documents/licence%20pro%20admr/projet%20gestion%20de%20stock/gestion%20des%20stocks/Programme%20de%20gestion%20des%20stocks/Nouveau%20produit.htm
je l'ai enregistré en format web sous 2007
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
19 mars 2009 à 09:47
19 mars 2009 à 09:47
Bonjour,
c'est clair qu'il n'arrivera pas à l'ouvrir, c'est le chemin sur ton disque dur :-)
Dépose le fichier sur cijoint.fr et colle ici le lien fourni.
eric
c'est clair qu'il n'arrivera pas à l'ouvrir, c'est le chemin sur ton disque dur :-)
Dépose le fichier sur cijoint.fr et colle ici le lien fourni.
eric
Laura
>
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
19 mars 2009 à 12:42
19 mars 2009 à 12:42
ok, je débute alors c'est pas toujours simple...
http://www.cijoint.fr/cjlink.php?file=cj200903/cijMZMjEd6.xls
http://www.cijoint.fr/cjlink.php?file=cj200903/cijMZMjEd6.xls
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
19 mars 2009 à 12:52
19 mars 2009 à 12:52
Salut,
C'est quoi la cellule avec mise en forme conditionnelle?
C'est quoi la cellule avec mise en forme conditionnelle?
c'est toutes les cellules de la ligne rouge DLC DLUO
j'avais fais une nouvelle mise en forme conditionnelle appliqué seulement aux cellules qui contiennent une valeur inférieure ou égale à aujourd'hui+(nombre de jour indiqué dans une autre case)
j'avais fais une nouvelle mise en forme conditionnelle appliqué seulement aux cellules qui contiennent une valeur inférieure ou égale à aujourd'hui+(nombre de jour indiqué dans une autre case)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
19 mars 2009 à 13:10
19 mars 2009 à 13:10
RE,
Ben, chez moi, la mise en forme fonctionne (Excel 2003) depuis userform
Au lieu d'écrire N fois
If Not IsEmpty(Feuil1.Cells(9, n).Value) Then n = n + 1
Tu peux faire une boucle
Ben, chez moi, la mise en forme fonctionne (Excel 2003) depuis userform
Au lieu d'écrire N fois
If Not IsEmpty(Feuil1.Cells(9, n).Value) Then n = n + 1
Tu peux faire une boucle
Do While Not IsEmpty(Feuil1.Cells(9, n).Value) n = n + 1 Loop
lol oui j'ai fais pas mal de bricolage! je n'ai reçu aucune formation de VBA et j'ai du me débrouiller seule pour tout faire donc il est évident que ce programme n'est absolument pas parfait.
par contre pour mon souci d'alarme on m'a donné une formule que j'ai réussi à adapter mais elle ne fonctionne que pour une case, je voudrais qu'elle fonctionne sur toute une ligne.
Sheets("feuil1").Range("c11").Value = DateValue(UserForm1.dlcdluo.Value)
il faudrait remplacer Range("c11") pour que cela signifie ligne 11...
par contre pour mon souci d'alarme on m'a donné une formule que j'ai réussi à adapter mais elle ne fonctionne que pour une case, je voudrais qu'elle fonctionne sur toute une ligne.
Sheets("feuil1").Range("c11").Value = DateValue(UserForm1.dlcdluo.Value)
il faudrait remplacer Range("c11") pour que cela signifie ligne 11...
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
19 mars 2009 à 13:33
19 mars 2009 à 13:33
Re,
En fait le numéro de colonne chage, la ligne restant la même.
Le numéro de colonne est donné par n
Donc tu peux écrire
A chaque nouveau valeur ajoutée, la boucle va incrementer n.
En fait le numéro de colonne chage, la ligne restant la même.
Le numéro de colonne est donné par n
Donc tu peux écrire
Sheets("feuil1").cells(11,n).Value = DateValue(UserForm1.dlcdluo.Value)
A chaque nouveau valeur ajoutée, la boucle va incrementer n.
18 mars 2009 à 22:43
qu'est ce que veut dire : " avec sendkeys tu simules l'appui sur la touche ENTRER"
et la deuxième solution je ne comprend pas non plus...mettre le code dans VBA, je sais faire mais je ne comprend pas le reste.
je ne sais pas si vous allez pouvoir m'expliquer, ou me guider mais en tout cas merci quand même.