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 :

[VBA-E] passer fichier inexistant


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Avril 2007
    Messages : 86
    Par défaut [VBA-E] passer fichier inexistant
    voila j'ai écrit il y a quelque temps pourobtenir un programme permettant de récupérer des valeurs dans d'autres fichiers vous m'avez beaucoup aidé, sa marchait très bien mais en sur les 2000 fichier 200 sont inexistant et ilme demandais à chaque fois de le retrouver, donc j'ai voulu incorporer une fonction pour seulement passer la ligne
    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
    Sub Macro1()
     
     
    Dim i As Integer
     
     
    For i = 3 To 2000
         If ='C:\...\" & Cells(i, 2).Value & "\" & Cells(i, 7).Value & "\" & "[" & Cells(i, 7).Value & ".XLS" & "]Feuil1'!R22C8" = false Then
    'rien
         Else
            Cells(i, 17).Select
            ActiveCell.FormulaR1C1 = _
            "='C:\...\" & Cells(i, 2).Value & "\" & Cells(i, 7).Value & "\" & "[" & Cells(i, 7).Value & ".XLS" & "]Feuil1'!R22C8"
         End If
    Next i
    End Sub
    mais je ne connais pas la synthaxe "if lien=false then rien."

  2. #2
    Membre éprouvé
    Inscrit en
    Juillet 2005
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 141
    Par défaut
    Bonjour
    regarde avec la fonction DIR je crois quelle fait ce que tu veux
    rémi

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Si c'est bien de cette ligne dont tu parles, essaie avec empty
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If Cells(i, 2).Value = Empty or Cells(i, 7).Value = Empty or Cells(i, 7).Value = empty Then
            'Le fichier n'existe pas
        else
            Cells(i, 17).Select
            ActiveCell.FormulaR1C1 = _
            "='C:\...\" & Cells(i, 2).Value & "\" & Cells(i, 7).Value & "\" & "[" & _
             Cells(i, 7).Value & ".XLS" & "]Feuil1'!R22C8"

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tiens, un code plus intelligent
    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
    Sub OuvrirSiLeFichierExiste()
        Call OuvrirUnClasseur("D:\xls\", "LeFichier.xls")
    End Sub
    
    Sub OuvrirUnClasseur(Chemin, NomFich)
    Dim fso As New FileSystemObject
    Dim Rep As Folder
        Set Rep = fso.GetFolder(Chemin)
            Wk = Chemin & NomFich
            If fso.FileExists(Wk) Then
               Workbooks.Open Filename:=Wk
               DoEvents 'Laisse le temps au système d'ouvrir le fichier avant de passer au suivant
            End If
        Set Rep = Nothing
    End Sub
    Ligne en bleu à placer dans ta boucle, et à la place de ton test

    Edit
    Penser à valider la référence "Microsoft Scripting runtime" -> Editeur VB -> Outils -> Références

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Avril 2007
    Messages : 86
    Par défaut
    Merci pour vos réponse, mais je vais voir sa que lundi
    ferronimus

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Avril 2007
    Messages : 86
    Par défaut
    ta première idée ouskel'n'or ne fonctionne pas, excel me demande toujours d'ouvrir les fichier manuellement, je vais tenter l'autre

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 06/03/2013, 23h54
  2. [VBA] Renomer un fichier
    Par Micki dans le forum VBA Access
    Réponses: 3
    Dernier message: 03/07/2008, 12h08
  3. [VBA-Excel,VB6,Fichier texte]enregistrer un classeur excel..
    Par Tarul dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/01/2005, 13h09
  4. Des fichiers inexistants qui existent pourtant !
    Par iubito dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 07/09/2004, 10h29
  5. [MFC] ouverture en lecture d'un fichier inexistant
    Par bigboomshakala dans le forum MFC
    Réponses: 9
    Dernier message: 07/05/2004, 12h42

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