IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

macro fonctionne avec xl2007 mais pas en 97 /2000


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : France, Marne (Champagne Ardenne)

    Informations forums :
    Inscription : Août 2009
    Messages : 89
    Par défaut macro fonctionne avec xl2007 mais pas en 97 /2000
    Bonjour,

    J'ai un formulaire avec une liste de noms de personnes absentes dans des champs non contigus, sur le restant du formulaire, je peux activer un UserForm qui vas me chercher des noms pour les personnes présentes dans une autre feuille du même classeur, toujours dans des champs non contigus.
    Je vérifie également par l'intermédiaire d'un controle text box que les noms des personnes présentes ne correspondent pas avec les absents.
    en xl 2007 cela fonctionne, quand la macro trouve un nom qui est absent, elle lance une msgBox et aprés confirmation de celle ci elle passe au nom suivant.
    mais en xl97/2000 xl bug et demande à fermer.

    voici le code qui me controle les absents ou les doublons :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Private Sub TextBox2_Change()
    Rem Alerte doublons
     
    If Range("AB9") > 0 Then
      msg = Range("AB5")
     
      confirmation = MsgBox(msg, vbYesNo + vbExclamation, "Alerte Plan de ligne")
     
          If confirmation = vbYes Then
          ActiveCell.Select
          Selection.ClearContents
          TextBox2 = 0
          End If
     
          If confirmation = vbNo Then
          ActiveCell.Select
          Selection.ClearContents
          TextBox2 = 0
          End If
     
    End If
     
    End Sub
    et voici une partie du code qui vas me chercher les noms :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    Sub Macro_Sucrés_LC_imp()
    '
    ' Macro_sucrés_std_imp Macro
    ' Enregistrement des noms pour sucrés LC imp
    ' Macro crée le 06/08/09 par Martin Dominique
     
        Application.ScreenUpdating = False
     
        Range("D12").Select                                  ' sucrés 14072 imp
        ActiveCell.FormulaR1C1 = "=Compétences!R[4]C[-2]"
        Range("D14").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-11]C[1]"
        Range("D16").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-11]C[1]"
        Range("D19").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-13]C[1]"
        Range("D21").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-13]C[1]"
        Range("D23").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-14]C[1]"
        Range("D25").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-15]C[1]"
        Range("D28").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-16]C[1]"
        Range("J13").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[4]C[-8]"
        Range("J15").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[4]C[-5]"
        Range("J19").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[1]C[-5]"
        Range("J22").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-1]C[-5]"
        Range("J25").Select
        ActiveCell.FormulaR1C1 = "=Compétences!RC[-5]"
        Range("J26").Select
        ActiveCell.FormulaR1C1 = "=Compétences!RC[-5]"
        Range("J27").Select
        ActiveCell.FormulaR1C1 = "=Compétences!RC[-5]"
        Range("J28").Select
        ActiveCell.FormulaR1C1 = "=Compétences!RC[-5]"
        Range("J29").Select
        ActiveCell.FormulaR1C1 = "=Compétences!RC[-5]"
        Range("J32").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[1]C[-5]"
        Range("J47").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-11]C[-8]"
        Range("J48").Select
        ActiveCell.FormulaR1C1 = "=Compétences!R[-11]C[-8]"
     
     
        Range("F12").Select                          ' comptage effectifs LC
        ActiveCell.FormulaR1C1 = "0.33"
        Range("F14").Select
        ActiveCell.FormulaR1C1 = "1"
        Range("L13").Select
        ActiveCell.FormulaR1C1 = "0.34"
        Range("L48").Select
        ActiveCell.FormulaR1C1 = "0.33"
     
    End Sub
    Merci de votre aide et bonne fin de weekend

    Dom

    Re bonjour,

    désolé mais je ne connaissais pas les balises pour le code

    Une autre astuce consisterait à tester chaque cellule des champs en rose dans la pièce jointe avec chaque cellule du formulaire compétence, mais je ne sais pas faire

    Merci à vous

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : France, Marne (Champagne Ardenne)

    Informations forums :
    Inscription : Août 2009
    Messages : 89
    Par défaut
    Re bonjour, j'ai trouvé :

    En fait il suffit d'effacer la formule de la cellule liée au controle en début de macro et de recopier la formule en fin de macro. De cette manière il n'y a plus d'interférence entre les deux macros

    Bon Forum à tous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonctionne avec IE mais pas Mozilla : evenement onkeyup
    Par sandddy dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/12/2007, 17h21
  2. Réponses: 2
    Dernier message: 11/12/2007, 13h36
  3. Réponses: 1
    Dernier message: 07/09/2007, 12h15
  4. Réponses: 3
    Dernier message: 07/06/2007, 09h17
  5. Fonction JS qui fonctionne avec Mozilla mais pas avec IE.
    Par etiennegaloup dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 31/10/2005, 13h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo