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 :

Problème de macro avec windows 64 bits


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 95
    Points : 30
    Points
    30
    Par défaut Problème de macro avec windows 64 bits
    Bonjour à tous,

    Je viens de rencontrer un soucis avec une macro.
    Sur divers pc elle fonctionnait, mais la elle ne fonctionne plus sur un PC.

    Sa me dit en code erreur veuillez mettre a jours "" langage expiré pour ..... 64 bits que faire.

    Le mot en question est La partie du code est le suivant.

    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
    Private Declare Function SHCreateDirectoryEx Lib "shell32" Alias "SHCreateDirectoryExA" (ByVal hWnd As Long, ByVal pszPath As String, ByVal psa As Any) As Long
    Public Function Enregistrement_PDF(index As Long)
        Dim MyBench As String
        Dim ID As String
        Dim Fichier As String
        Dim Opérations As String
     
        MyBench = Sheets("BDD").Range("H" & index).Value
        ID = Sheets("BDD").Range("A" & index).Value
     
     
        MaintenancedataFilePath = "\\H61sys\essais$\SERVICE\MAINTENANCE PREVENTIVE\Archivage fiche d'intervention maintenance\2016\" & MyBench & "\" & ID & ".pdf"
     
        SHCreateDirectoryEx 0, MaintenancedataFilePath, ByVal 0&
     
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=MaintenancedataFilePath & "\" & ID & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
     
        Fichier = "H:\SERVICE\MAINTENANCE PREVENTIVE\Archivage fiche d'intervention maintenance\Fichier excel\Archivage fiche d'intervention maintenance 2016.xlsm"
        ThisWorkbook.SaveAs Fichier
     
     
    End Function
    Function du haut qui merde donc les autres aussi je pense.

    Si vous avez une idée je suis preneur.

  2. #2
    Membre habitué
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 129
    Points : 149
    Points
    149
    Par défaut
    As tu essayé avec un ptrsafe ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Private Declare PtrSafe Function SHCreateDirectoryEx Lib "shell32" Alias "SHCreateDirectoryExA" (ByVal hWnd As Long, ByVal pszPath As String, ByVal psa As Any) As Long

  3. #3
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, à lire, assimiler et mettre en pratique : Développer avec Office 64 bits

    Même Microsoft déconseille la 64 bits
    Extrait :
    Comme de plus en plus d’ordinateurs personnels exécutent les versions 64 bits de Windows, il est tentant de déployer la version 64 bits d’Office 2013. L’un des avantages de cette version 64 bits d’Office est qu’elle permet aux utilisateurs d’utiliser des jeux de donnés Excel et Project plus importants. Il existe cependant des inconvénients en matière de compatibilité : les compléments et solutions Office peuvent ne pas fonctionner. C’est pourquoi la version 32 bits d’Office 2013 est recommandée pour la plupart des utilisateurs.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 95
    Points : 30
    Points
    30
    Par défaut
    Ok je crois avoir cerné le problème tous les pc sont en 64 bits.

    Image non disponible le code d'appel aux API ne fonctionne plus en l'état.
    Peut-être ne savez-vous pas que vous utilisez des API ?
    Ces API sont des fonctions externes déclarées avec l'instruction Declare Function ou Declare Sub.
    ShellExecute ou GetOpenFileName par exemple sont des API largement utilisées.
    Une réécriture de ces instructions est nécessaire.
    Si sur mon pc elle fonctionne c'est que j'ai codé en 32 bits et que donc c'est sur l'autre pc que office serait en 64 bits vus que c'est de la que vient l eproblème

    Non ou j'ai mal compris la phrase que j'ai cité

    Mais ce qui m'étonne c'est qu'on est tous sous office 2010.

  5. #5
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut

    Bonjour,

    il ne s'agit pas de Windows mais d'Excel en 32 ou en 64 bits !

    Le code initial fonctionne uniquement sur les versions 32 bits d'Excel,
    installation recommandée par Microsoft lui-même lors de la sortie de la version 2010 !


    ______________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 95
    Points : 30
    Points
    30
    Par défaut
    c'est bon je suis en 32 bits donc c'est good pour moi je changerais la version d'office pour mon collègue on a le pack 32 par défaut d'avec.

    merci a vous

    Cordialement

    Romain

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/12/2010, 08h35
  2. Problème de démarrage avec windows XP
    Par mohus08 dans le forum Windows XP
    Réponses: 2
    Dernier message: 03/04/2008, 09h01
  3. Problème de déploiement avec Windows Installer
    Par vladvad dans le forum Général Dotnet
    Réponses: 10
    Dernier message: 28/03/2008, 04h48
  4. Problème de téléchargement avec Windows XP pro
    Par bernard38 dans le forum Windows XP
    Réponses: 7
    Dernier message: 01/03/2006, 09h10
  5. Problème de redirection avec window.location
    Par Kosti dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 30/11/2004, 18h31

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