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 :

Consolidation d'un document word VB.net 2010 [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2012
    Messages : 16
    Par défaut Consolidation d'un document word VB.net 2010
    Bonjour,

    Je travaille avec Microsoft Studio 2010. J'essaye de créer un programme qui me permettra de sélectionner des fichiers words existants parmi une liste via une Checked List Box, pour en créer un.

    Le code ci dessous me permet de scanner et d'afficher les documents words que j'y ai déposé, de les sélectionner et de créer un document word avec.
    Le problème c'est que le document word créé ne contient que l'emplacement des fichiers sélectionnés et non leur contenu.

    J'ai également essayé la fonction My.Computer.FileSystem.WriteAllText pour copier le contenu du fichier vers le document créé, mais lorsqu'à lieu plusieurs copie, la dernière écrase la précédente.

    Je suis un peu désespéré, vos pistes me seraient d'une grande utilité.

    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 Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim No As Integer
            Dim i, j, k As String
            i = "Mémoire Technique"
            j = TextBox_Commune.Text
            k = TextBox_NomOperation.Text
            If CheckedListBox1.CheckedItems.Count <> 0 Then
                'S'il y a des éléments cochés une boucle balaye les éléments cochés 
                '(collection CheckedItems) et affiche le numéro de l'élément DANS LA LISTE toutes lign
     
                No = FreeFile()
                Dim x As Integer
                Dim s As Integer
                s = CheckedListBox1.CheckedItems.Count
                For x = 0 To CheckedListBox1.CheckedItems.Count - 1
                    s = (x + 1).ToString
                    File.AppendAllText("C:\Users\Antoine\Documents\Mémoire technique\" & i & " " & j & " " & k & ".doc", CheckedListBox1.CheckedItems(x))
                Next x
            End If
            FileClose(No)
            System.Diagnostics.Process.Start("C:\Users\Antoine\Documents\Mémoire technique\" & i & " " & j & " " & k & ".doc")
        End Sub

  2. #2
    Membre éclairé
    Homme Profil pro
    Responsable Maintenance
    Inscrit en
    Août 2012
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Responsable Maintenance

    Informations forums :
    Inscription : Août 2012
    Messages : 479
    Par défaut
    Bon je ne sais pas si c'est la solution n'etant pas un pro , je debute comme toi.


    de ce que j'ai lu de la fonction File.ApendAllText( chemin du fichier , chaine de caractère a ajouter en fin de fichier)

    sauf que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CheckedListBox1.CheckedItems(x)
    dans ton code est considerer comme un objet

    donc fait voir pour tester

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim str01 as string = Convert.ToString( checkedListbox1.checkedItem(x))
    File.AppendAllText("C:\Users\Antoine\Documents\Mémoire technique\" & i & " " & j & " " & k & ".doc", str01)

  3. #3
    Membre éclairé
    Homme Profil pro
    Responsable Maintenance
    Inscrit en
    Août 2012
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Responsable Maintenance

    Informations forums :
    Inscription : Août 2012
    Messages : 479
    Par défaut
    j'ai mal lu ta question ...
    en fait tu veux ouvrir plusieurs word copier leur contenu et coller dans un nouveau que tu viens de creer ?

  4. #4
    Membre averti
    Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2012
    Messages : 16
    Par défaut
    Merci d'avoir pris du temps pour étudier mon problème.
    Oui c'est exactement ce que je veux faire. Le problème que j'ai rencontré lorsque j'ai essayé de copier coller le contenu des documents words sélectionnés dans un nouveau document créé c'est que le fichier coller "n" venait écraser le "n-1". J'ai donc essayé de trouver quelque chose qui me permette de coller à la fin du document, sans en écraser le contenu (chose normalement possible avec la fonction appendalltext) mais sans succès.

  5. #5
    Membre averti
    Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2012
    Messages : 16
    Par défaut
    Je viens d'essayer ton code, mais cela me fait la même chose qu'auparavant. Le document créé contient uniquement l'emplacement des fichiers, et non leur contenu.

  6. #6
    Membre éclairé
    Homme Profil pro
    Responsable Maintenance
    Inscrit en
    Août 2012
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Responsable Maintenance

    Informations forums :
    Inscription : Août 2012
    Messages : 479
    Par défaut
    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 Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim No As Integer
            Dim i, j, k As String
            i = "Mémoire Technique"
            j = TextBox_Commune.Text
            k = TextBox_NomOperation.Text
            If CheckedListBox1.CheckedItems.Count <> 0 Then
                'S'il y a des éléments cochés une boucle balaye les éléments cochés 
                '(collection CheckedItems) et affiche le numéro de l'élément DANS LA LISTE toutes lign
     
                No = FreeFile()
                Dim x As Integer
                Dim s As Integer
                s = CheckedListBox1.CheckedItems.Count
                For x = 0 To CheckedListBox1.CheckedItems.Count - 1
                    s = (x + 1).ToString
                    File.AppendAllText("C:\Users\Antoine\Documents\Mémoire technique\" & i & " " & j & " " & k & ".doc", CheckedListBox1.CheckedItems(x))
                Next x
            End If
            FileClose(No)
            System.Diagnostics.Process.Start("C:\Users\Antoine\Documents\Mémoire technique\" & i & " " & j & " " & k & ".doc")
        End Sub


    J'essai de piger ce que tu as fait

    tu declares des variables
    tu transfert des valeurs de texte dans ces dites variables
    tu verififies que tu as kkchoses de sélectionné dans le checkbox
    tu comptes le nombres d’élément sélectionnés
    tu declares 2 variables une pour ta boucle et l'autre pour moi est un mystere

    car s est d'abord déclarer s as integer ( donc une valeur numérique entière)

    plus tard tu y charges un calcul transformer en string ???

    mais en aucun cas dans ta procedure tu ouvres un fichier pour y copier quelques chose
    File.AppendAllText c'est pour coller du texte en fin de fichier ..
    ok
    mais faut avoir le texte copier au prealable , la effectivement tu copies la liste des items checke dans la boite c'est tout


    il faut ouvrir / copier dans une variable / fermer le fichier / coller le contenu dans le nouveau fichier


    je vais regarder ca demain il se fait tard

  7. #7
    Membre averti
    Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2012
    Messages : 16
    Par défaut
    Les deux variables X et S sont pour la boucle. En soit ce ne sont pas elles qui posent problème.
    Le problème est en effet que je copie-colle uniquement les items sélectionnés et non pas leur contenu.

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

Discussions similaires

  1. document word ASP.NET C#
    Par neo_2000_2006 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 08/08/2008, 16h13
  2. [VB .NET] Questions sur la generation d un document Word
    Par qaiden dans le forum Windows Forms
    Réponses: 1
    Dernier message: 30/07/2006, 10h01
  3. [VB.NET][Automation Word]utiliser un document word comme un report
    Par kinganasius dans le forum Windows Forms
    Réponses: 10
    Dernier message: 01/06/2006, 11h38
  4. [VB.NET] Generer un document Word
    Par alfonsebrown dans le forum Windows Forms
    Réponses: 3
    Dernier message: 26/04/2006, 14h56
  5. [VB.NET] Probleme impression document word
    Par lord_kyshow dans le forum ASP.NET
    Réponses: 36
    Dernier message: 09/06/2005, 16h07

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