problemes sur macro

kikouyou

XLDnaute Junior
Amis excellien,

1)Je me trouve face à un problème de programmation car je souhaite imputer une formule a une case si il y a présence d'un mot particulier.

2)A l'intérieur de ce fichier d'autres macros fonctionne ( application de formules dans un certain nombre de cellules commune a la première macro ). Je pense qu'elles interfèrent avec la macro présente en feuil1.



Je joins un fichier présentant la macro 1) qui pose souci. Si je supprime le mot clé cela me met en débogage.


si toutefois cela ne parait pas clair
je joindrai le fichier complet mais c'est un fichier à vocation industriel donc sensible....


Je vous remercie par avance de votre aide ;)


Kikouyou
 

Pièces jointes

  • 290408.xls
    22 KB · Affichages: 44

jp14

XLDnaute Barbatruc
Re : problemes sur macro

Bonsoir

J'ai supprimé le mot rayon dans la cellule, tout fonctionne.
Au lieu d'utiliser une fonction Et, sortir de la procédure si la condition n'est pas réalisée :
If Target.Column <> 3 Then Exit Sub
If Target.Value <> "Rayon" Then Exit Sub

JP
 
Dernière édition:

kikouyou

XLDnaute Junior
Re : problemes sur macro

euhhhhhhhhhhhhh

merci pour ta réponse mais j'ai peur de ne pas avoir tt saisi............


Je pense que je v te faire passer mon fichier complet, parce que c'est difficile a expliqué. En fait, je souhaite que si le mot rayon est activé et que case nominal est inférieur ou égale à 2 alors la tol - est egale à arrondisup(nominal * 0.25 , 1).

Et je pense que cela n'est pas si evident que cela :( :(


je te remercie
 

Pièces jointes

  • Support5colonnes.zip
    38 KB · Affichages: 23

cbea

XLDnaute Impliqué
Re : problemes sur macro

Bonsoir kikouyou, jp14,

Voici peut-être une solution :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Cell As Range
    
    For Each Cell In Target
        If Cell.Column = 3 And Cell.Value = "Rayon" Then
            Cell.Offset(0, 2).FormulaR1C1 = "=ROUND(RC[-1]*0.25,1)"
        Else
            ' ???
        End If
    Next Cell
End Sub

J'ai mis '??? si la condition n'est pas remplie car je ne sais pas ce que tu veux mettre.
 

kikouyou

XLDnaute Junior
Re : problemes sur macro

Hello jp14,

ca va?

Merci pour ce code qui fonction très bien!!!!

Il m'évite de planter lorsque je supprime le mot Rayon. Le problème vient effectivement de la fonction "and" qui me pose un souci car je voulais que la formule s'applique si la cellule voisine est <= à 2. Je pense que pour l'instant ton code me suffit amplement.

C'est à moi de chercher ensuite.

merci encore pour ton aide. Je te souhaite une agréable journée.

Kikouyou
 

kikouyou

XLDnaute Junior
Re : problemes sur macro

jp14,


suite a l'utilisation de ton code au sein de mon fichier 5 colonnes.zip, cela bug, peux tu m'expliquer prk? le bug se produit lorsque j'execute la macro a l'aide du bouton C1NORMALE :( :( :(


merci
 

jp14

XLDnaute Barbatruc
Re : problemes sur macro

Bonjour

N'ayant pas compris le problème du fait de la non connaissance du projet voici du code à rajouter pour éviter le déclenchement de la macro qui gère le mot "rayon".

Déclarer la variable flag comme variable publique
public flag as boolean

Dans la macro évènementielle rajouter après la déclaration ( principe du parapluie )
If flag=true then exit sub ' on sort si flag = true
If Target.Count > 1 Then Exit Sub ' on sort si on a sélectionné plus d'une cellule

Dans les macros qui peuvent lancer la macro évènementielle rajouter
flag =true au début

et

flag=false en fin de macro

A tester

JP
 
C

Compte Supprimé 979

Guest
Re : problemes sur macro

Salut Kikouyou,

Pour ton problème, il faut changer le code de CBEA, de la sorte
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim Cell As Range
  For Each Cell In Target
    If Cell.Column = 3 Then ' Un test supplémentaire en dessous
      If Cell.Value = "Rayon" Then
        Cell.Offset(0, 2).FormulaR1C1 = "=ROUND(RC[-1]*0.25,1)"
      Else
            ' ???
      End If
    End If
  Next Cell
End Sub

Car à un moment donné, la valeur renvoyée, est celle de la cellule AQ6 qui est #N/A
Donc la macro BUG à ce moment là !

Voilà ;)
 

kikouyou

XLDnaute Junior
Re : problemes sur macro

cbea, jp et bruno,


Je ne peux que m'incliner ;) . Merci pour vos connaissances car je ne connaissais pas le principe du flag et merci pour ce nouveau qui fonctionne bruno. Je dois l'étayer encore un petit peu. ( on est développeur ou on ne l'est pas ).


merci encore pour vos connaissances partagées et vos disponibilitées
 

Discussions similaires

Réponses
8
Affichages
215
Réponses
9
Affichages
357

Statistiques des forums

Discussions
312 430
Messages
2 088 362
Membres
103 830
dernier inscrit
fombarone