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

MATLAB Discussion :

Word, graphique, matlab


Sujet :

MATLAB

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut Word, graphique, matlab
    Bonjour,

    avec matlab je traite des données puis fait des graphique et enregistre les graphique en .emf de manière automatique.

    Ensuite je prend le tous que je colle manuellement dans word.

    Ma question, est-il possible de coder dans matlab pour qu'il me prenne tous mes graphiques et qu'il les mette tous dans un fichier word? Ou est-ce juste un rêve et je vais devoir continuer a le faire manuellement?

    merci.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    640
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 640
    Points : 776
    Points
    776
    Par défaut
    bonjour,

    une discussion similaire peut être trouvée ici

    C'est un enregistrement dans un fichier excel. Tu devrais pouvoir je suppose arranger ca pour un document word.

  3. #3
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    tu peux aussi regarder dans les contributions sur le matlab file exchange :
    figure+word
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    merci, pour les réponses, je vais jeter un oeil a ça voir comment, je peux m'en sortir .

  5. #5
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Si tu es sous windows, tu peux aussi t'inspirer de ce post :
    http://www.developpez.net/forums/d22...d/#post1433015
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    Bonjour, voila je me suis fait un en piquant a droite a gauche ceci:

    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
           
    
    print(HANDLES.(f{i}),'-dmeta') %.................Copying to clipboard
           FILE  = [doss '\' serie '.doc'];
           APP = actxserver('Word.Application');
           APP.Visible = 1;
           
           if ~exist(FILE,'file')
                Doc=APP.Documents.Add;
                Doc.PageSetup.Orientation = 'wdOrientLandscape';
                Doc.PageSetup.TopMargin = 4/0.07;
                Doc.PageSetup.BottomMargin = 4/0.07;
                Doc.PageSetup.LeftMargin = 4/0.07;
                Doc.PageSetup.RightMargin = 4/0.07;
                 
                %Doc.SaveAs(FILE);
           else Doc=invoke(APP.Documents,'Open',FILE); %Open the file
           end
           
           invoke(APP.Selection, 'Paste');
          
    %Ici un truc pour redimentioner
           
           %invoke(Doc,'SaveAs',FILE);
           %invoke(APP,'Quit');
           %delete(APP);

    Ca ne fait pas encore ce que je veux. Je ne connais rien en VBA. A la facon macgiver, j'ai trouvé comment mettre la page en paysage. Mais je ne sais pas trop comment fonctionne les unités. En vert j'ai mi 4/0.07 pour avoir 2cm de chaque coté. C'est pas terrible mais ceci marche.

    Il reste un truc que je m'arrive pas a faire. J'ai besoin une fois mon image collé de la redimensionner en plus petit.

    J'ai essayé Doc.Selection.Height = 240.95; et d'autre truc mais sa ne marche. Si une âme charitable pouvait me dire comment redimensionner l'image après l'avoir collé. Sachant que je ne veux pas la redimensionner avant dans matlab, parce que ce sont des images qui si elles sont retenues doivent être a nouveau agrandi. Et je ne doit pas perdre en qualité.

    Merci pour votre aide.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    En regardant word après l'opération, le curseur est toujours après le graphique. Peut être pour sélectionner le graphique que je vient de coller, il suffirai de reculer le curseur d'un cran... puis d'accéder au propriété de l'image pour la redimensionner...

    Quelqu'un sait faire ça? Malheureusement je n'ai pas le temps de m'initier au VBA, donc si quelqu'un a ma réponse merci...

    merci pour votre aide

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    Donc voila ce que j'ai trouvé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    last_graphe=get(Doc.InlineShapes,'Count');
    Ceci me donne bien le nombre de graphe dans mon fichier word, mais impossible de trouver comment accéder a un graphe en particulier pour modifier sa taille...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
        fin=get(Doc.Range,'End');
        Doc.Range(fin-2,fin-1).Select;
    Ceci me permet de sélectionner le dernier graphe, mais même constat impossible de trouver comment modifier la tailler...

    Help me :S

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    toujours pas trouvé...

    Je peux lire un en VBA qu'il suffit de faire un truc du genre

    Doc.InlineShapes(index du graphique).propriété

    Mais bien que le count me donne bien le bon nombre de graph. La taille de inlinesshapes est de 1*1. Et meme lorsque je test sur l'index 1, il n'y a aucune propriété dedans...

    Quelqu'un pourrai me dire comment accéder au priorité de mes graphe???

    merci.

    PS: j'ai testé en créant une macro et regardé le code, maois rien n'y fait je ne trouve pas les propriéte a partir de matlab.

    Merci pour votre aide.

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    Au cas où quelqu'un suit encore mon souci,

    voila ce que je viens de trouver, aprés avoir selectionner mon graphique, je fait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    get(APP.Selection.ShapeRange)
    Celq me répond
    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
    Application: [1x1 Interface.Microsoft_Word_12.0_Object_Library._Application]
                           Creator: 1.2973e+009
                            Parent: [1x1 Interface.Microsoft_Word_12.0_Object_Library.Selection]
                             Count: 0
                       Adjustments: [1x29 char]
                     AutoShapeType: [1x29 char]
                           Callout: [1x29 char]
                              Fill: [1x29 char]
                        GroupItems: [1x56 char]
                            Height: [1x29 char]
                    HorizontalFlip: [1x29 char]
                              Left: 1.3500
                              Line: [1x29 char]
                   LockAspectRatio: [1x29 char]
                              Name: [1x29 char]
                             Nodes: [1x29 char]
                          Rotation: [1x29 char]
                     PictureFormat: [1x29 char]
                            Shadow: [1x29 char]
                        TextEffect: [1x29 char]
                         TextFrame: [1x56 char]
                            ThreeD: [1x29 char]
                               Top: 0
                              Type: [1x29 char]
                      VerticalFlip: [1x29 char]
                          Vertices: [1x29 char]
                           Visible: [1x29 char]
                             Width: [1x29 char]
                    ZOrderPosition: [1x29 char]
                         Hyperlink: [1x56 char]
        RelativeHorizontalPosition: 'wdRelativeHorizontalPositionColumn'
          RelativeVerticalPosition: 'wdRelativeVerticalPositionParagraph'
                        LockAnchor: 0
                        WrapFormat: [1x1 Interface.Microsoft_Word_12.0_Object_Library.WrapFormat]
                            Anchor: [1x56 char]
                   AlternativeText: [1x29 char]
                             Child: [1x29 char]
                       ParentGroup: [1x29 char]
                       CanvasItems: [1x56 char]
                                ID: [1x29 char]
                      LayoutInCell: -1
                      LeftRelative: -999999
                       TopRelative: -999999
                     WidthRelative: -999999
                    HeightRelative: -999999
            RelativeHorizontalSize: 'wdRelativeHorizontalSizePage'
              RelativeVerticalSize: 'wdRelativeVerticalSizePage'
                          SoftEdge: [1x29 char]
                              Glow: [1x29 char]
                        Reflection: [1x29 char]
    Il y a le heigt et le width que je cherche depuis un moment. Mais je n'arrive ni a les lire, ni a ecrire.

    J'arrive a lire Left par exemple mais impossible de lire tous ce qui est en 1x29char... Quelqu'un a une idee?

    merci de votre aide

Discussions similaires

  1. fermer un document Word avec Matlab 7.1
    Par Tommy24 dans le forum MATLAB
    Réponses: 1
    Dernier message: 06/05/2011, 11h45
  2. Interface graphique MATLAB et la fonction XLSREAD
    Par Amine_lamo dans le forum Interfaces Graphiques
    Réponses: 5
    Dernier message: 13/11/2010, 14h51
  3. Exporter des graphiques Matlab
    Par Ptinéwik dans le forum MATLAB
    Réponses: 2
    Dernier message: 02/03/2009, 13h26
  4. Copier/coller de paragraphe Word dans MATLAB
    Par RomGar dans le forum MATLAB
    Réponses: 7
    Dernier message: 13/08/2008, 14h28
  5. [Débutant] Graphique MATLAB
    Par anael52 dans le forum MATLAB
    Réponses: 2
    Dernier message: 30/04/2008, 14h43

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