Aide pour macro excel

Résolu/Fermé
seb - 25 nov. 2009 à 21:41
 seb - 27 nov. 2009 à 17:26
Bonjour, si quelqu'un peut m'aider a trouver une macro pour mon problème,

http://img268.imageshack.us/img268/1504/exell.jpg

voici mon fichier et j'aimerai en faite pouvoir réaliser une macro qui quand je l'active, me rajoute 1 a tous les chiffres de la colonne A sauf celui de la ligne du chiffre qui est marqué dans le tableau LIGNE

pour cette exemple cela me donnerai en A2=5+1=6, A3=6+1=7 , A4=60+1=61 , A5=52 (car le tableau LIGNE me dit 5 donc je n'ajoute pas 1 a la ligne 5) , A6=30+1=31 , A7=3 , A8=20

merci d'avance
A voir également:

8 réponses

Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 293
26 nov. 2009 à 18:50
j'avais pas compris en effet!!

Sub Ajout()
Dim I As Integer
Dim c As Variant
Dim Derlig As Integer

Derlig = Sheets(1).[A65535].End(xlUp).Row
I = Sheets(1).Range("E2").Value 
For Each c In Range("A2:A" & Derlig)
    If c.Row <> I Then
        c.Value = c.Value + 1
    else
        c.value=0 
    End If

Next


End Sub
1
ah c'est bizarre , ca marchait sur le excel de mon boulot et sur le mien sa marque un rond rouge avec une croix blanche et 400,c'est excel 2002
0
dsl, c'est moi qui a merdé avec mon fichier sur mon ordi, j'avai une feuille Graph qui s'était ouverte avant la feuille 1 du coup ça beuguai, merci pour ton aide c'est super ça marche merci
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 293
25 nov. 2009 à 22:41
Bonjour
je te propose ce petit code

pour faire simple
1: Tu nommes la cellules qui contient le numero de ligne 'num_ligne'
2: Alt F11, insère un module et copie/colle le code ci dessous.
3: tu crées un bouton sur ta feuille tu lui affectes la macro Ajout
4: si c'est bon tu mets en résolu : )


Sub Ajout()
Dim I As Integer
Dim c As Variant
Dim Derlig As Integer

Derlig = Sheets(1).[A65535].End(xlUp).Row
I = Sheets(1).Range("num_ligne").Value  ' ou i= sheets(1).range("E2").value si ta valeur est en E2
For Each c In Range("A2:A" & Derlig)
    If c.Row <> I Then
        c.Value = c.Value + 1
    End If

Next


End Sub
0
salut,merci pour ton aide mais j'ai un problème , car je connais rien a excel^^, pour nommer une cellule ,il faut aller dessus et marquer num_ligne a la place de E2 par exemple ?

du coup après avoir fait tous sa, sa ma marqué end sub erreur du coup je les rajouté a la fin du texte ,c'est ce qu'il fallait faire? et la sa me marque erreur de compilation for sans next

merci
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 293
26 nov. 2009 à 10:52
j'ai écris le code en modifiant la ligne en gras
Si tu veux utiliser une autre cellule c'est à cet endroit qu'il faut changer...
maintenant pour nommer une cellule.

Sous excel 97/2003 tu fais
Click sur la cellule E2 dans notre exemple, Insertion / nom / Définir tu tapes num_ligne et click ok

sous excel 2007 Formules / Définir un nom / définir un nom
un raccourci en haut à gauche dans la feuille de calcul à gauche de fx il y a la zone de nom
Tu tapes directement ton nom.



Sub Ajout()
Dim I As Integer
Dim c As Variant
Dim Derlig As Integer

Derlig = Sheets(1).[A65535].End(xlUp).Row
I = Sheets(1).Range("E2").Value 
For Each c In Range("A2:A" & Derlig)
    If c.Row <> I Then
        c.Value = c.Value + 1
    End If

Next


End Sub
0
salut, ouè trop bien sa marche merci et si je voudrai mette le chiffre de la ligne choisi a 0 celui la, tu sais ce qu'il faut que je rajoute merci
0
salut, ouè trop bien sa marche merci et si je voudrai mette le chiffre de la ligne choisi a 0 celui la, tu sais ce qu'il faut que je rajoute merci
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 293
26 nov. 2009 à 14:09
si je voudrai mette le chiffre de la ligne choisi a 0 celui la

Ben je crois que ça ne fera rien.

car le principe est la comparaison du n° de ligne de la colonne A2 et Axxx avec la cellule E2

comme la ligne 0 n'existe pas toutes les valeurs seront incrémentées de 1
0
je me suis mal exprimé en faite j'aimerai remettre a zéro celle la case ou l'on n'a pas rajouté 1?? merci encore pour ton aide
0

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

Posez votre question
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 293
27 nov. 2009 à 09:10
Bonne journée et tu mets résolu sur le premier post.
Merci
0
je ne sait pas ou mettre resolu?
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 293
27 nov. 2009 à 13:32
sur le premier post la où tu as posé ta question il y a des icones en haut à droite
0
nan je vois rien peut ètre parce que je suis pas inscrit au site
0
j'aimerai améliorer un peu ma macro,car la sa ajoute 1 a toute la colonne A et j'aimerai si c'est possible que sa s'arrète a la rangé X, dont X sera la valeur de la cellule G8

si quelqu'un peut m'aider car j'essaie mais j'y arrive pas merci
0
C'est bon j'ai réussi nikel
0