Maccro excel

Résolu/Fermé
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010 - 9 févr. 2010 à 08:50
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010 - 9 févr. 2010 à 11:14
Bonjour,
-Je voudrais savoir pourquoi quand je veut insérer une maccro que quelcun m'a donneé comme:
Sub zero()
Public Sub Worksheet_Change(ByVal Target As Range)
Static flag As Boolean
If Target.Address = "$I$8" And Target = "X" And flag = False Then
flag = True
Range("F8") = Range("G8")
Range("G8") = 0
End If
End Sub
End Sub

-me donne se message quand je veux l'exécuter:

Erreur de compilation:
Seuls des commentaire peuvent apparaitrent après End Sub, End Property, ou end function.

-je voudrais aussi savoir comment supprimer les lignes du fichier si dessous lors de son impression quand les fonction SI de la colonne A n'affiche rien?
En vous remerciant d'avence.
Bruno




http://www.cijoint.fr/cjlink.php?file=cj201002/cij83qzFRv.xlsx
A voir également:

20 réponses

Farfadet88 Messages postés 6295 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 4 février 2025 1 370
9 févr. 2010 à 08:53
Essaye d'enlever

Sub zero ()

et un des End sub
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 08:59
Merci farfadet mais ça ne marche toujours pas je n'ai plus le message d'erreur mais la macro ne fonctionne pas il m'a demander d'ajouter un nom de maccro quand j'ai voulu enlever Sub zero() et VBA à mis un trai sous la maccro avec a nouveau Sub "Titre"
End sub
Je n'arriverais jamais a faire des maccro pourtant j'en ai vraiment envie lol
Pour la deuxieme question est-ce possible?
Merci
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 09:00
Aussi si je veut appliquer cette maccro a toute la colonne comment faire?
Merci
0
Farfadet88 Messages postés 6295 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 4 février 2025 1 370
9 févr. 2010 à 09:02
Peux tu mettre ton fichier sur ci joint au format excel 2003?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 09:09
Voila:
http://www.cijoint.fr/cjlink.php?file=cj201002/cijDuRnBv9.xls

C'est par raport à ma deuxieme question.


Merci
0
garion28 Messages postés 1545 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 3 avril 2011 406
9 févr. 2010 à 09:12
fait alt + F11 pour ouvrir l'éditeur vba, puis dans la page de ta feuille où tu veu voir la modification s'effectuer (toujours dans l'éditeur vba) tu colle ce qui suit
Public Sub Worksheet_Change(ByVal Target As Range)
dim rge as range
dim i as long

i=1

for each rge in range("I1:I65536")
if rge.value="X" then
range("F" & i").value=range("G" & i).value
range("G" & i).value="0"
end if
next rge
End Sub


normalement ca devrai marcher
par contre je n'ai jamais vraiment utilié la suppression de ligne par macro ni l'impression donc pour ta deuxième question je ne peu pas t'aider
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 09:27
Bonjour Garion et merci pour ton aide m'ai je narrive toujour pas a le faire fonctionner sa en devien ridicule je croi que je me suis planté quant j'ai taper la première:
http://www.cijoint.fr/cjlink.php?file=cj201002/cij0gWp3jU.xls
Sur se lien il y a sur la feuille deux les la feuille ou je veut faire cette maccro qui consiste a:
Quant on met un X dan la colonne J, la colonne G prend la valeur de la colonne H et la colonne H se met à 0 je ne sais pas si c'est trés clair?

En tout cas merci beaucoup pour votre aide.
0
garion28 Messages postés 1545 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 3 avril 2011 406
9 févr. 2010 à 09:51
le code qui suit fonctionne, cependant dans chaque cellule de la colonne F il y a une référence a la colonne du dessus, du coup ca change une bonne partie des autres cellules de la même colonne
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Value = "X" Or Target.Value = "x" Then
    Range("F" & Target.Row).Value = Range("G" & Target.Row).Value
    Range("G" & Target.Row).Value = "0"
End If
End Sub
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 09:58
Je ne comprend pas pourquoi, mais je suis obliger de rentrer un nom de maccro pour l'utiliser et quand je le met il me met problème de compilation donc je ne comprend plus. Y-a-t'il une metode particulière a avoir pour rentrée une maccro?

Je vous remercie pour votre aide.
0
Farfadet88 Messages postés 6295 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 4 février 2025 1 370
9 févr. 2010 à 09:59
tu ouvres VBA, double click sur worksheet et tu colles le code que t'as fourni garion. Ca marche
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 10:09
Je sais que je devient lourd mais je ne sais pas ou se trouve worksheet...
je suis désolé par ma nulitée sur se coup
En tout cas merci pour tout.
0
Farfadet88 Messages postés 6295 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 4 février 2025 1 370
9 févr. 2010 à 10:12
Quand tu ouvres VBA, sur la gauche tu as un volet "Projet - VBA projet"

Dedans tu as un onglet "This workbook".

Tu doubles clique dessus et tu colles le code dans l'onglet qui s'ouvre

(dsl c'était pas worksheet, erreur de ma part)
0
garion28 Messages postés 1545 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 3 avril 2011 406
9 févr. 2010 à 10:13
double clic sur feuil2 au lieu de workbook, ca évitera de mettre le bazar si tu a d'autres info sur d'autres feuilles que tu ne voudrai pas changer (et ca ne plantera pas)
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 10:23
OK MERCI BEAUCOUP!!!!
C'est la joie par contre pourquoi la colonne F se remet a zero dans tout les cas ne pourait-on pas garder la cellule F a sa valeur meme en metant une croi

Merci
0
Farfadet88 Messages postés 6295 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 4 février 2025 1 370
9 févr. 2010 à 10:26
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Value = "X" Or Target.Value = "x" Then
Range("g" & Target.Row).Value = Range("h" & Target.Row).Value
Range("h" & Target.Row).Value = "0"
End If
End Sub

0
garion28 Messages postés 1545 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 3 avril 2011 406
9 févr. 2010 à 10:31
j'ai fait la macro suivant les données que tu as mi au début ^^ (f qui est remplacé par g et g qui devien 0)
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 10:35
Mince alor c'est G qui prend F et H qui se remet a zero mais cela se fait par une soustraction donc juste G qui prend la valeur de F par contre juste la valeur pas la formule Max pour que F puisse changer sans que G change.
Ou peut on trouver une formation VBA?
Merci en tout cas
0
garion28 Messages postés 1545 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 3 avril 2011 406
9 févr. 2010 à 10:45
je vien de trouver ce site:
http://www.mdf-xlpages.com/modules/publisher/item.php?itemid=9
il a l'air pas mal pour apprendre le vba (mais biensur il y a différentes manière de programmer en vba)
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 11:13
J'ai changer la maccro pour que G prenne la valeur de F mais des que la valeur de F augmente F se remet a zero et H prend la valeur de F alors que j'aimerais que h garde la valeur lorsquon a mis X en J et que H soit egal a F-G
Est-ce possible?
Merci pour le cour je vais essailler d'aprendre alors mais le temps me manque un peut.
0
blackflyes Messages postés 42 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 23 juin 2010
9 févr. 2010 à 11:14
Désolé c'est G qui se remet a zero
Merci
0