problème d'incrémentation et variable

billouu

XLDnaute Junior
Bonjour,

J'aurai deux petites questions la première sur la macro suivante.
Je souhaiterai incrémenter la cellule A1 de 1 a chaque fois que deux cellules sont compléter, et ensuite le mot "contrôle" s'écrit dans une autre cellule, permettant de vérifier que ces cellules ont été complété.
L'incrémentation permettrait de passer à la ligne d'en dessous.
Cela marche la première fois mais ensuite la cellule A1 est incrémenté de plus de 200 (au lieu de 1). Je ne vois pas ou est le problème.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim ligne As String

ligne = Cells(1, 1)

If Cells(ligne, 1) <> "" And Cells(ligne, 2) <> "" Then
Cells(ligne, 4) = "contrôle"
Cells(1, 1).Value = Cells(1, 1) + 1

End If
End Sub

Pour l'autre question,
Je voudrais savoir comment récupérer une variable dans la feuille ThisWorkbook. J'ai cette macro et je voudrai récupérer la variable "ligne" dans une macro situé dans l'objet de "feuille1":
Private Sub Workbook_open()

ligne = 6
While Cells(ligne, 1) <> ""
ligne = ligne + 1
Wend
Cells(1, 9).Value = ligne

End Sub

Par avance, merci

Billouu
 

jp14

XLDnaute Barbatruc
Re : problème d'incrémentation et variable

Bonjour

Il faut se méfier des procédures Change.

Exemple mettre un point d'arrêt sur la ligne ligne = Cells(1, 1) (touche f9) et utiliser la touche F8 pour voir le déroulement de la procédure.

Deuxième macro
Il faut rajouter with sheets("feuille1")
et mettre un point devant Cells
.Cells(ligne, 1)

et
end with
ens sub.

JP
 
Dernière édition:

smotty

XLDnaute Occasionnel
Re : problème d'incrémentation et variable

Salut,

Voici une idée en fichier joint pour la question 1.

Pour la variable, tu peux en déclarer une public dans un module.

"public ligne as integer"

A+

smotty
 

Pièces jointes

  • RangeChange.xls
    34 KB · Affichages: 43
  • RangeChange.xls
    34 KB · Affichages: 44
  • RangeChange.xls
    34 KB · Affichages: 51

billouu

XLDnaute Junior
Re : problème d'incrémentation et variable

Merci pour les réponses, rien qu'en changeant par "selectionChange" mon problème s'est résolu.

En revanche pour le second j'ai du mal à récupérer la variable situé dans this workbook. J'ai bien essayé avec Public m'est rien y fait.
Je rexplique.

Voilà ma macro dans this Workbook:

Private Sub Workbook_open()

ligne = 6
While Cells(ligne, 1) <> ""
ligne = ligne + 1
Wend
Cells(1, 9).Value = ligne

End Sub


Je souhaite récupérer la variable "ligne" pour l'intégrer dans une macro situé dans l'objet "feuille1" du type:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Merci,

Billouu
 

smotty

XLDnaute Occasionnel
Re : problème d'incrémentation et variable

Re

Je pense qu'il te manque qq chose...

Vois le fichier joint concernant la variable.

1) Je l'ai déclarée dans le module1 en public

2) Je lui donne une valeur dans "Thisworkbook"

3) en feuil1 j'affiche sa valeur.



A+
 

Pièces jointes

  • RangeChange.xls
    35.5 KB · Affichages: 40
  • RangeChange.xls
    35.5 KB · Affichages: 41
  • RangeChange.xls
    35.5 KB · Affichages: 40

Discussions similaires

Réponses
0
Affichages
175

Statistiques des forums

Discussions
312 471
Messages
2 088 702
Membres
103 927
dernier inscrit
Mkeal