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 :

Migration Windows7 32b vers Windows7 64b


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2014
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2014
    Messages : 99
    Points : 45
    Points
    45
    Par défaut Migration Windows7 32b vers Windows7 64b
    Bonjour,

    Dans le cadre de mon travail, je dois migrer une application VBA Excel d'un poste Windows 7 32bits (Dell XPS) avec Office 2010 32bits à un poste Windows 7 64bits (Dell Optiplex 7010).
    Ayant lu sur certains forums qu'il était dans ce cas préferable de rester sur un Office 32 bits (et ayant moi-même pu constater en premier lieu les incompatibilités avec Office 2010 64bits), j'ai installé Office 2010 32bits sur le nouveau PC.
    Hors, malgré cela, la macro ne tourne pas :
    - à l'ouverture du fichier, j'ai déja 2 fois la warning box "Erreur de fichier : risque de perte de données" qui s'affiche
    - puis, j'ai une warning box "Erreur d'execution '1004': Erreur définie par l'application ou par l'objet"
    Je clique alors sur le bouton "Débogage" et j'atteri dans le code avec la ligne "Set G = S.Shapes(I).Chart" surligné en jaune.
    Voici la partie de code en question :

    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
    Sub NouveauGraph()
    Dim S, W, G, I
     
        Set S = ThisWorkbook.Sheets(SHEETINSERT)
        Workbooks(WORKDATA).Sheets(SHEETINSERT).Select
        Set W = Workbooks(WORKDATA).Charts.Add
        W.Name = SheetGraph
        W.Move before:=Workbooks(WORKDATA).Sheets(1)
        W.ChartArea.Clear
        W.Location Where:=xlLocationAsObject, Name:=SHEETINSERT
        I = Int(Val(Replace(SheetGraph, SHEETREF, "")))
        Set G = S.Shapes(I).Chart
        G.ChartArea.Left = 4#
        G.ChartArea.Top = 4# + (445 * (I - 1)) + 4
        G.ChartArea.Width = 720#
        G.ChartArea.Height = 445#
     
        FormatGraph
     
        Exit Sub
     
     
    End Sub
    N'ayant que des conaissances basiques en VBA, je ne pensais pas avoir à toucher au code pour effectuer cette migration...
    Surtout que les versions d'Office utilisées sont les mêmes (Office Pro 2010 32bits).

    Y a-t-il une option à paramétrer quelque part ?
    Si non, d'où vient le problème ?
    Vais-je devoir intervenir dans le code ?

    Merci d'avance de vos réponses/conseils !!

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut heu.....
    Bonjour
    chez moi excel 2007 32 bits ton code tel qu'el était plein d'erreurs
    dans le code que tu a posté il manque les valeur des variable utilisée pour les noms de sheets et divers petits detail
    je suis etonné que avant ca fonctionnait
    j'ai donc pris les variables comme des string en attendant

    ce code fonctionne j'ai bloqué la derniere ligne("'FormatGraph") n'ayant pas cette fonction a porté de main
    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
    Sub NouveauGraph()
    Dim S as worksheet, W as object, G, I as long 
     I=1
        Set S = ThisWorkbook.Sheets("SHEETINSERT")
        ThisWorkbook.Sheets("SHEETINSERT").Select
        Set W = ThisWorkbook.Charts.Add
        W.Name = "SheetGraph"
        W.Move before:=ThisWorkbook.Sheets(1)
        W.ChartArea.Clear
        W.Location Where:=xlLocationAsObject, Name:="SHEETINSERT"
        I = Int(Val(Replace("SheetGraph", SHEETREF, "")))
        Set G = S.Shapes(I).Chart
        G.ChartArea.Left = 4#
        G.ChartArea.Top = 4# + (445 * (I - 1)) + 4
        G.ChartArea.Width = 720#
        G.ChartArea.Height = 445#
     
        'FormatGraph
     
        Exit Sub
     
     
    End Sub

Discussions similaires

  1. Migration de windowsXP vers windows7
    Par adelsunwind dans le forum IHM
    Réponses: 1
    Dernier message: 02/02/2013, 19h43
  2. [AC-2003] Prob. migration WinXP vers Windows7
    Par sebouratif dans le forum Access
    Réponses: 6
    Dernier message: 06/02/2012, 17h01
  3. Internet Explorer 6 ralentit la migration des entreprises vers Windows7
    Par Hinault Romaric dans le forum Actualités
    Réponses: 17
    Dernier message: 17/11/2010, 10h11
  4. Demande de conseil pour migration de lignes vers colonnes
    Par ririd dans le forum Administration
    Réponses: 6
    Dernier message: 04/11/2004, 17h02
  5. [SYBASE] migration ASE12.0 vers ASE12.5
    Par sybase dans le forum Sybase
    Réponses: 1
    Dernier message: 25/10/2004, 15h53

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