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 :

Utilisation d'une macro en 32 et 64 bits


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 139
    Par défaut Utilisation d'une macro en 32 et 64 bits
    Bonjour

    J'ai fait une macro pour un bouton de commande dans un userform qui est non fonctionnel lorsqu'on l'exécute dans une version 64 bits d'Excel

    J'ai fait des recherches mais je m'y perd dans les solutions proposées, votre aide serait grandement apprécié

    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
    61
    62
    63
    64
    65
    66
    67
    Private Sub CmOk_Click() 'inscrire une ligne de facturation
     
    num = Sheets("Facturation_Détaillée").Range("A65536").End(xlUp).Row + 1
    Application.Calculation = xlCalculationManual
    Application.ScreenUpdating = False
     
    Range("Facturation_Détaillée!A" & num).Value = TextBox_NoBillet.Value
    Range("Facturation_Détaillée!B" & num).Value = ComboBox_TypeBillet.Value
    Range("Facturation_Détaillée!C" & num).Value = ComboBox_DelaiBillet.Value
    Range("Facturation_Détaillée!D" & num).Value = ComboBox_NomSite.Value
    Range("Facturation_Détaillée!G" & num).Value = TextBox_DateRealisation.Value
    Range("Facturation_Détaillée!H" & num).Value = ComboBox_Check_Site.Value
    Range("Facturation_Détaillée!J" & num).Value = ComboBox_Check_Complementaire.Value
    Range("Facturation_Détaillée!L" & num).Value = TextBox_Detail_Travaux.Value
    Range("Facturation_Détaillée!P" & num).Value = TextBox_Km.Value
    Range("Facturation_Détaillée!R" & num).Value = TextBox_Vol.Value
    Range("Facturation_Détaillée!T" & num).Value = TextBox_jour_terrestre.Value
    Range("Facturation_Détaillée!V" & num).Value = TextBox_jour_aerien.Value
    Range("Facturation_Détaillée!X" & num).Value = ComboBox_Check_remorque_terrestre
    Range("Facturation_Détaillée!Z" & num).Value = ComboBox_Check_remorque_aerien.Value
    Range("Facturation_Détaillée!AC" & num).Value = ComboBox_Corps_Emploi.Value
    Range("Facturation_Détaillée!AD" & num).Value = TextBox_Nbr_Heure.Value
    Range("Facturation_Détaillée!AG" & num).Value = ComboBox_Tarification_fixe.Value
    Range("Facturation_Détaillée!AH" & num).Value = TextBox_Nbr_fixe.Value
    Range("Facturation_Détaillée!AK" & num).Value = TextBox_Qte_Pieces.Value
    Range("Facturation_Détaillée!AL" & num).Value = TextBox_description_Piece.Value
    Range("Facturation_Détaillée!AM" & num).Value = TextBox_fabricant_Piece.Value
    Range("Facturation_Détaillée!AN" & num).Value = TextBox_modele_Piece.Value
    Range("Facturation_Détaillée!AO" & num).Value = TextBox_Prix_Piece.Value
    Range("Facturation_Détaillée!AR" & num).Value = TextBox_Requis.Value
    Range("Facturation_Détaillée!AS" & num).Value = TextBox_Requis_ID.Value
    Range("Facturation_Détaillée!AY" & num).Value = TextBox_particulier_qte.Value
    Range("Facturation_Détaillée!AZ" & num).Value = TextBox_particulier.Value
    Range("Facturation_Détaillée!BA" & num).Value = TextBox_particulier_prix.Value
     
    ComboBox_Check_Site.Value = ""
    ComboBox_Check_Complementaire.Value = ""
    TextBox_Km.Value = ""
    TextBox_Vol.Value = ""
    TextBox_jour_terrestre.Value = ""
    TextBox_jour_aerien.Value = ""
    ComboBox_Check_remorque_terrestre.Value = ""
    ComboBox_Check_remorque_aerien.Value = ""
    ComboBox_Corps_Emploi.Value = ""
    TextBox_Nbr_Heure.Value = ""
    ComboBox_Tarification_fixe.Value = ""
    TextBox_Nbr_fixe.Value = ""
    TextBox_Qte_Pieces.Value = ""
    TextBox_description_Piece.Value = ""
    TextBox_fabricant_Piece.Value = ""
    TextBox_modele_Piece.Value = ""
    TextBox_Prix_Piece.Value = ""
    TextBox_Requis.Value = ""
    TextBox_Requis_ID.Value = ""
    TextBox_particulier_qte.Value = ""
    TextBox_particulier.Value = ""
    TextBox_particulier_prix.Value = ""
     
     
    CreateObject("WScript.Shell").Popup ("Ajout d'une ligne de facturation réussi"), 1, "Message"
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True
     
    UseFacturation.Width = Application.Width
    UseFacturation.Height = Application.Height
     
    End Sub
    Merci de l'intérêt que vous y porterez

  2. #2
    Membre Expert Avatar de mfoxy
    Homme Profil pro
    Automation VBA
    Inscrit en
    Février 2018
    Messages
    752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Automation VBA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2018
    Messages : 752
    Par défaut
    Bonjour Gonter,

    Je ne voit de prime abord pas de ligne de code qui pourrait être incompatible avec le 64bit.

    Ormis peut-être le message de fin de code, j'avoue ne pas utiliser cette syntaxe.

    Pourriez-vous donner le message d'erreur ainsi que la ligne de code impactée ?

    Bav

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 139
    Par défaut
    Merci mfoxy

    Le message est "erreur de compilation dans le module caché : UseFacturation ..."

    Le code semble à la première ligne "num = "

  4. #4
    Membre Expert Avatar de mfoxy
    Homme Profil pro
    Automation VBA
    Inscrit en
    Février 2018
    Messages
    752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Automation VBA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2018
    Messages : 752
    Par défaut
    Re,

    Vu que vous êtes passer d'une version 32 à 64 bit, il pourrait aussi s'agir d'un problème de library.

    Pour vérifier :

    - en allant voir dans le VBA (Alt+F11),
    - Sélectionner "Outils" > "Références"
    - En regardant ce qui était indiqué comme "MANQUANT"

    - Décocher DLL indiqué comme "MANQUANT"
    - et la remplacer par son équivalent mais de version ( les chiffres après le nom) différent.

    Essayez de regarder de ce côté peut-être.

    Bav

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2010
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 139
    Par défaut
    Merci mfoxy

    Effectivement en version 64 bits la référence "Microsoft Windows Common Controls-2.6.0 (SP6)" est manquante.

    Je la décoche et c'est fonctionnel en 64 bits par contre est-ce que des effets de bord peuvent apparaître? Je ne trouve pas son équivalent dans les références, as-tu une idée?

    Au plaisir!

  6. #6
    Membre Expert Avatar de mfoxy
    Homme Profil pro
    Automation VBA
    Inscrit en
    Février 2018
    Messages
    752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Automation VBA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2018
    Messages : 752
    Par défaut
    Re,

    Voici le lien d'une même discution pour le même souci sur ce forum.

    https://www.developpez.net/forums/d1...-windows-10-a/

    À voir si tu trouveras une solution, je n'ai pas tout fouillé mais apparament cette référence n'est tout simplement plus compatible avec un office 64bit

Discussions similaires

  1. [AC-2000] Utilisation d'une macro excel sous access
    Par Syrliane dans le forum VBA Access
    Réponses: 1
    Dernier message: 19/06/2009, 14h17
  2. [WD12&14] utilisation d'une macro de substitution
    Par BENKOUIDER dans le forum WinDev
    Réponses: 2
    Dernier message: 18/06/2009, 13h07
  3. Message pendant utilisation d'une macro
    Par Jonathan Raucy dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 18/03/2008, 17h48
  4. [VBA] utilisation d'une macro excel 2003 sur excel 2004 for mac
    Par fofika dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/11/2007, 16h30
  5. Utilisation d'une macro d'un autre classeur
    Par madislak dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/07/2006, 15h00

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