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 :

deplacement du contenu d'un dossier local vers un autre dossier local


Sujet :

VB.NET

  1. #21
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    salut kropernic,
    Ton idée est bonne .... mais c'est pas les directives que j'ai des etages superieurs .... et pour les faire changer d'avis ....

  2. #22
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Ok bin alors j'ai rien dit
    Kropernic

  3. #23
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    Je ne vois pas bien pourquoi au début tu voulais lister tous les fichiers et les déplacer, et maintenant tu nous parle de ne déplacer qu'un fichier ?
    Et je ne vois pas non plus ou est ton problème, tu as le code pour déplacer un fichier, au lieu de tous les déplacer tu déplaces seulement le bon et voilà ...

    Ensuite je ne vois pas ce qui t'empêche de lancer une commande dos (même si tu n'en as pas besoin puisque le framework permet de faire la même chose) en invisible, tes "etages supérieurs" n'en verront rien ...
    Le Porc est un loup pour le Porc.

  4. #24
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    parce qu'entre temps les directives ont changées tout simplement.
    Je n'y peux strictement rien, le cahier des charges est inexistant et je dois composer avec malheureusement.
    Maintenant je dois :
    - downloader tous les .xls d'un folder a la racine de notre site via FTP : c'est bon
    - Les mettre dans un repX en local : c'est bon
    - charger un des fichiers .xls du repX dans mon appli a partir d'une dialbox (donc je choisis visuellement mon fichier) : c'est bon
    - traiter ledit fichier : c'est bon
    - deplacer enfin ce .xls traite dans repY : c'est presque bon

    j'ai juste du mal a traduire en vb : deplacer seulement ce fichier et pas un autre. Mon probleme est la en fait

  5. #25
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    et bien tu charges ton fichier dans l'appli, tu connais donc son nom (que tu dois stocker quelque part), tu as juste à déplacer seulement celui là plutôt que de tout reparcourir et tout déplacer.
    Le Porc est un loup pour le Porc.

  6. #26
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    bon alors j'ai essaye et reessaye pendant plusieurs jours ... eh bien ca ne fonctionne pas ....
    J'arrive sans probleme a deplacer tous les fichiers d'un rep a un autre, mais deplacer le fichier utilise et uniquement celui la, je n'y arrive pas.
    - J'ai, dans un repC de mon DD differents fichiers .xls
    - Je choisis un des fichiers .xls et je charge les valeurs de ses cellules dans
    un formulaire grace à (version simplifiée de la sub) :
    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
    51
    52
    53
    54
    55
    56
     
     Private Sub chargement()
    ' Fichier Excel
            Dim CheminFicher As String
            Dim BoiteDialogue As New OpenFileDialog
     
                If AppExcel IsNot Nothing Then
                MessageBox.Show("Excel Worksheet is closing please wait")
                If xlWorkSheetOne IsNot Nothing Then
                    xlWorkSheetOne = Nothing
                End If
                If xlWorkSheetTwo IsNot Nothing Then
                    xlWorkSheetTwo = Nothing
                End If
                If xlWorkbook IsNot Nothing Then
                    xlWorkbook = Nothing
                End If
                AppExcel.Quit()
                AppExcel = Nothing
            End If
            With BoiteDialogue
                ' Initialisation de la boite de dialogue
                .Title = "Load Data"
                .InitialDirectory = "\\nas\repA\repB\repC\" ' répertoire de telechargement des fiches
                .Filter = "Fichiers Excel |*.xls; *.xlsx"
     
                ' vérification de la séléction
                If .ShowDialog() = System.Windows.Forms.DialogResult.OK Then
                    CheminFicher = .FileName
                Else
                    MessageBox.Show("No Excel file selected")
                    Exit Sub ' Abandon de la routine
                End If
                    'ouvre l'onglet 1 de l'application
                    AppExcel = New OXL.Application
                    xlWorkbook = AppExcel.Workbooks.Open(CheminFicher)
                    xlWorkSheetOne = CType(xlWorkbook.Worksheets(1), Microsoft.Office.Interop.Excel.Worksheet)
                    AppExcel.Visible = False
     
                    'chargement des data en Textbox 
                    Dim rng As OXL.Range = Nothing
     
                    rng = CType(Me.xlWorkSheetOne.Cells(10, 4), Microsoft.Office.Interop.Excel.Range)
                    Me.tbDestinaraire.Text = CType(rng.Value, String)
     
                    rng = CType(Me.xlWorkSheetOne.Cells(10, 7), Microsoft.Office.Interop.Excel.Range)
                    Me.txtPRENOM.Text = CType(rng.Value, String)
     
                    rng = CType(Me.xlWorkSheetOne.Cells(10, 6), Microsoft.Office.Interop.Excel.Range)
                    Me.txtNOM.Text = CType(rng.Value, String)
     
                    rng = CType(Me.xlWorkSheetOne.Cells(10, 8), Microsoft.Office.Interop.Excel.Range)
                    Me.TxtNAISSANCE.Text = CType(rng.Value, String)
           CloseAppExcel()
            End With
    End sub
    a ce moment les données sont chargées je n'ai plus besoin du fichier excel, je ferme donc le fichier grace a CloseAppExcel()

    Mon souci est que je ne vois absolument pas ou et comment j'ai en memoire le nom du fichier excel que je viens d'utiliser pour le deplacer.
    Je suis bien obligé de faire un premier le closeAppExcel() pour pouvoir deplacer le fichier non ?

  7. #27
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    hum, je ne sais pas moi, peut être

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim CheminFicher As String
    ?
    Le Porc est un loup pour le Porc.

  8. #28
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    ben j'ai deja essaye de faire un move avec le contenu de cheminfichier mais cela ne fonctionne pas

  9. #29
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    Comment ça "ça ne fonctionne pas" ?

    Le fichier n'est pas déplacé ?
    Tu as une erreur ?

    A quoi correspond "CloseAppExcel()" ?

    Pense à faire un xlWorkbook.Close (ce que tu fais peut être dans "CloseAppExcel")
    Le Porc est un loup pour le Porc.

  10. #30
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    alors en ce qui concerne la sub CloseAppExcel(), la voila :
    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
    Private Sub CloseAppExcel()
            'procedure de fermeture du fichier excel
            If xlWorkSheetOne IsNot Nothing Then
                xlWorkSheetOne = Nothing
            End If
            If xlWorkSheetTwo IsNot Nothing Then
                xlWorkSheetTwo = Nothing
            End If
            If xlWorkbook IsNot Nothing Then
                xlWorkbook = Nothing
            End If
            If AppExcel IsNot Nothing Then
                AppExcel.Quit()
                AppExcel = Nothing
            End If
        End Sub
    et pour etre plus précis, effectivement il n'y a pas de déplacement du tout. Je n'ai ni erreur ni avertissement a l'execution. Je me demande dailleurs si le deplacement du fichier ne pourrait pas être fait dans le CloseAppExcel() ??

  11. #31
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    ça n'a pas de sens de faire ça dans la fermeture d'excel.
    Es-tu allé en pas à pas vérifier les chemin quand tu arrives sur ton move ?
    Vérifie la valeur de ton fichier d'origine et la valeur de ton fichier de destination.
    Et poste le code avec le move si ça ne fonctionne pas.
    Le Porc est un loup pour le Porc.

  12. #32
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    Difficile de reposter le move file que j'avais fait vu que je l'ai enlevé pour cause d'inefficacite.
    Je viens de tester en debug pour voir, en mettant mon point d'arret sur le CloseAppExcel(), "CheminFicher" me renvoie "\\nas\repA\repB\repC\le_bon_fichier_utilise.xls" ce qui correspond bien au path + au fichier que je voudrais deplacer.
    Comme j'ai (partie de mon code initial)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     ' vérification de la séléction
                If .ShowDialog() = System.Windows.Forms.DialogResult.OK Then
                    CheminFicher = .FileName
    j'ai teste .Filename qui me renvoie egalement la bonne valeur.

    J'en avais conclu que je pouvais faire un filename.move mais je pense avoir un probleme de formulation du code.
    Est ce qu'au moins je suis sur la bonne voie ?

  13. #33
    Membre chevronné
    Avatar de Pelote2012
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 925
    Points : 1 839
    Points
    1 839
    Billets dans le blog
    2
    Par défaut
    J'ai du faire un gestionnaire de fichier ...
    ça va peut-être t'aider
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     Dim CheminPhy As String = DossierName
                If My.Computer.FileSystem.DirectoryExists(CheminPhy) Then
                    Dim Folder As New IO.DirectoryInfo(CheminPhy)
                    For Each fic In Folder.GetFiles
                        fic.Delete()
                    Next
     
                End If
    ça, c'est pour te montrer comment jouer avec un fichier particulier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     Dim CheminPhy As String = DossierName
                    Dim FicPhys As New IO.FileInfo(CheminPhy & "/" & e.CommandArgument.ToString)
                    FicPhys.Delete() ' Suppression physique
    NB: Imports System.IO
    Si débugger est l'art d'enlever les bugs ... alors programmer est l'art de les créer

  14. #34
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    Et bien oui, donc dans "CheminFichier" on a le bon chemin, essaye de remetre le Move, et si tu as toujours l'erreur c'est que ton répertoire de destination n'est peut être pas correct.
    Le Porc est un loup pour le Porc.

  15. #35
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    merci BROWNIE pour ton aide, ca va me permettre de me familliariser plus en avant avec les manipulations de fichiers
    Je reteste mon file.move pour voir asmduty

  16. #36
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    alors j'ai fait ca :
    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 filemove()
            Dim myDate As DateTime
            If Not (DateTime.TryParse(TxtDate.Text, myDate)) Then
                MessageBox.Show(" Date Error ")
                Exit Sub
            End If
            Try
                Dim FileSource As String = CheminFichier
                Dim FileDestination As String = ………………..
                If File.Exists(FileSource) = False Then
                    MessageBox.Show("File not found")
                    Exit Sub
                End If
                If File.Exists(FileDestination) Then
                    File.Delete(FileDestination)
                End If
                File.Move(FileSource, FileDestination)
            Catch ex As Exception
                MessageBox.Show(String.Format("The process failed: {0}", ex.ToString()))
            End Try
        End Sub
    sauf que ........ je ne vois pas comment definir le chemin de destination (filedestination) du coup rien ne peut eventuellement fonctionner

  17. #37
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    Et que veux tu qu'on fasse ?
    C'est à nous de te dire ou mettre ton fichier ?
    Le Porc est un loup pour le Porc.

  18. #38
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    mais non mais je me suis mal exprime
    je sais tres bien ou le mettre c'est quasi me même chemin que l'ancien, j'ai du mal a trouver l'expression pour definir le filedestination, je pourrais mettre un truc du genre Dim FileDestination As String = "\\nas\repA\repB\RepC\" mais je n'ai pas le chemin complet puisque je n'ai pas le nom du xls dedans.
    C'est ce que je ne comprends pas, pour moi un chemin c'est un chemin, un fichier c'est un fichier et ca je ne capte pas

  19. #39
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    bon alors maintenant j'ai essaye la chose suivante :
    je reprends mon sub qui load les datas du fichier excel choisi vers le printform
    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    Private Sub Buttonload_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Buttonload.Click
            ' Fichier Excel
            Dim CheminFicher As String
            Dim BoiteDialogue As New OpenFileDialog
            txtDocteur2.Text = txtDocteur.Text
            If AppExcel IsNot Nothing Then
                MessageBox.Show("Excel Worksheet is closing please wait")
                If xlWorkSheetOne IsNot Nothing Then
                    xlWorkSheetOne = Nothing
                End If
                If xlWorkSheetTwo IsNot Nothing Then
                    xlWorkSheetTwo = Nothing
                End If
                If xlWorkbook IsNot Nothing Then
                    xlWorkbook = Nothing
                End If
                AppExcel.Quit()
                AppExcel = Nothing
            End If
            With BoiteDialogue
                ' Initialisation de la boite de dialogue
                .Title = "Load Data"
                .InitialDirectory = "\\nas\Calculateur\data\encours\" ' répertoire de l'application
                .Filter = "Fichiers Excel |*.xls; *.xlsx"
     
                ' vérification de la séléction
                If .ShowDialog() = System.Windows.Forms.DialogResult.OK Then
                    CheminFicher = .FileName
                Else
                    MessageBox.Show("Aucun fichier Excel séléctionné")
                    Exit Sub ' Abandon de la routine
                End If
                If Etiqoeiltraite.Text = "OD" Then
                    Dim Filesource As String = .FileName
                    Dim Filedestination As String = "\\NAS\calculateur\data\traites"
                    'ouvre l'onglet 1 de l'application
                    AppExcel = New OXL.Application
                    xlWorkbook = AppExcel.Workbooks.Open(CheminFicher)
                    xlWorkSheetOne = CType(xlWorkbook.Worksheets(1), Microsoft.Office.Interop.Excel.Worksheet)
                    AppExcel.Visible = False
     
                    'chargement des data en Textbox 
                    Dim rng As OXL.Range = Nothing
     
                    rng = CType(Me.xlWorkSheetOne.Cells(10, 4), Microsoft.Office.Interop.Excel.Range)
                    Me.tbDestinaraire.Text = CType(rng.Value, String)
     
                    rng = CType(Me.xlWorkSheetOne.Cells(10, 7), Microsoft.Office.Interop.Excel.Range)
                    Me.txtPRENOM.Text = CType(rng.Value, String)
     
                    rng = CType(Me.xlWorkSheetOne.Cells(10, 6), Microsoft.Office.Interop.Excel.Range)
                    Me.txtNOM.Text = CType(rng.Value, String)
     
    MessageBox.Show("Data loaded in the form")
    CloseAppExcel()
    File.Move(Filesource, Filedestination)
              end if
                End If
    Je ne remets pas le cas pour if etiquette = OG c'est la même chose
    je mets juste apres
    If Etiqoeiltraite.Text = "OD" Then
    la dimension des filesource et filedestination
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim Filesource As String = .FileName
     Dim Filedestination As String = "\\NAS\repa\repb\repD"
    et en fin de traitement, juste après avoir fermé le fichier excel, je demande le deplacement du dit fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    CloseAppExcel()
    File.Move(Filesource, Filedestination)
              end if
                End If
    je verifie en debug,
    filesource vaut "\\NAS\repa\repb\repc\le_bon_nom_de_fichier.xls"
    Filedestination vaut "\\NAS\repa\repb\repD" (et non pas "\\NAS\repa\repb\repD\le_bon_nom_de_fichier.xls")

    J'ai un message d'erreur a l'execution me disant
    Le processus ne peut pas accéder au fichier, car il est utilisé par un autre processus.
    J'avoue que je commence a deprimer serieusement avec cette histoire de file.move.

  20. #40
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    Essaye de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    If xlWorkbook IsNot Nothing Then
        xlWorkbook.close
        xlWorkbook = Nothing
    End If
    plutôt que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    If xlWorkbook IsNot Nothing Then
        xlWorkbook = Nothing
    End If
    dans ton CloseAppExcel()

    L'histoire de le définir à nothing sans le fermer me parait étrange ...

    Si le soucis persiste, rajout un system.threading.thread.sleep(2000) avant de déplacer le fichier, il est possible que le PC n'ai pas encore relaché le fichier d'Excel au moment ou tu essayes de le déplacer.
    Le Porc est un loup pour le Porc.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. [WS 2008 R2] Deplacement de dossiers personnels vers un autre serveur
    Par Daguerre101 dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 23/10/2014, 21h12
  2. Javamail - Déplacer un mail du dossier INBOX vers un autre dossier
    Par hackwell69 dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 03/11/2009, 16h02
  3. Copier un fichier vers un autre dossier
    Par kofky0 dans le forum VBScript
    Réponses: 4
    Dernier message: 22/08/2007, 12h50
  4. Réponses: 4
    Dernier message: 26/04/2007, 11h23
  5. Réponses: 1
    Dernier message: 20/03/2007, 13h39

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