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

VB.NET Discussion :

Correspondance VBA -> VB.NET


Sujet :

VB.NET

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 10
    Par défaut Correspondance VBA -> VB.NET
    Bonsoir,

    J'essai de traduire une macro VBA en VB.NET et j'ai quelques soucis à retrouver certaines options :

    Le but principal du programme est de pouvoir se positionner dans un document Word et remplacer des paragraphes par d'autres issus de documents différents.

    En VBA, on peut se positionner à l'aide des signets ou à un emplacement définit par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Selection.MoveUp Unit:=wdScreen, Count:=14
    (par exemple)

    En VB.NET cela donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MonDoc.Application.Selection.MoveDown(Unit:= ?? ,Count:=14)

    Sauf qu'il n'y a pas d'argument pour Unit:= comme wdScreen, wdLine,..

    J'ai bien importé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Imports Microsoft.Office.Interop
    Imports Microsoft.Office.Interop.Word
    Imports Microsoft.Office.Core
    Voilà si quelqu'un à une idée ou déjà rencontrer ce soucis je suis preneur !

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 10
    Par défaut
    Après quelques recherches, il est nécessaire d'ajouter :

    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
     Public Enum WdUnits
            wdCharacter = 1  '&H1
            wdWord = 2  '&H2
            wdSentence = 3  '&H3
            wdParagraph = 4  '&H4
            wdLine = 5  '&H5
            wdStory = 6  '&H6
            wdScreen = 7  '&H7
            wdSection = 8  '&H8
            wdColumn = 9  '&H9
            wdRow = 10  '&HA
            wdWindow = 11  '&HB
            wdCell = 12  '&HC
            wdCharacterFormatting = 13  '&HD
            wdParagraphFormatting = 14  '&HE
            wdTable = 15  '&HF
            wdItem = 16  '&H10
        End Enum
    Donc pour se positionner dans le document il faut écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mydoc.Application.Selection.MoveDown(Unit:=5, Count:=14)
    Une question reste en suspend, pourquoi faut il énumérer wdUnits alors que l'on importe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Imports Microsoft.Office.Interop.Word
    ?

Discussions similaires

  1. VB6, VBA ou VB.NET
    Par typhoon74 dans le forum Microsoft Office
    Réponses: 2
    Dernier message: 20/10/2009, 22h39
  2. Inclure du code vba dans vb.net
    Par l_achraf dans le forum VB.NET
    Réponses: 8
    Dernier message: 20/04/2009, 19h53
  3. Traduction VBA en VB.NET
    Par tirixil dans le forum VB.NET
    Réponses: 2
    Dernier message: 05/11/2007, 13h12
  4. Lien entre VBA et VB.net ?
    Par RaelRiaK dans le forum Access
    Réponses: 9
    Dernier message: 10/11/2006, 15h09

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