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 :

problème filesearch excel 2007


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut problème filesearch excel 2007
    Bonjour j'ai une macro qui fonctionne sous excel 2005 et pas 2007. J'ai lu que filesearch n'était plus implémenté sous 2007, mais quelqu'un pourrai t'il adapté mon code pour pouvoir utiliser cette macro dans les 2 versions.

    merci

    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
    Sub lance()
    Dim i As Long
    For i = 1 To Selection.Count
    ligne = Selection.Cells(i, 1).Row
    nom = "prix_" + ActiveCell.Text + ".xls"
                With Application.FileSearch
                    .LookIn = ActiveWorkbook.Path
                    .Filename = nom
                    .MatchTextExactly = True
                     If .Execute() <> 0 Then
                        If .FoundFiles(1) = ActiveWorkbook.Path + "\" + nom Then
                        form = "='" + ActiveWorkbook.Path + "\[" + nom + "]prix_" + ActiveCell.Text + "'!$K$33"
                        Workbooks.Open Filename:=ActiveWorkbook.Path + "\" + nom
                        End If
                    Else
                        Workbooks.Open Filename:=ActiveWorkbook.Path + "\prix_type.xls"
                        ActiveWorkbook.SaveAs Filename:=ActiveWorkbook.Path + "\" + nom
                        Mid(nom, Len(nom) - 3, 4) = "    "
                        ActiveSheet.Name = RTrim(nom)
                        ActiveSheet.Cells(4, 2).Formula = Right(nom, Len(nom) - 5)
                        ActiveWorkbook.Save
                    End If
                End With
    Next
    End 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
    Sub imprime()
    '
    For i = 1 To Selection.Count
    ligne = Selection.Cells(i, 1).Row
    nom = "prix_" + ActiveCell.Text + ".xls"
                With Application.FileSearch
                    .LookIn = ActiveWorkbook.Path
                    .Filename = nom
                    .MatchTextExactly = True
                If .Execute() = 1 Then
                    If .FoundFiles(1) = ActiveWorkbook.Path + "\" + nom Then
                    form = "='" + ActiveWorkbook.Path + "\[" + nom + "]prix_" + ActiveCell.Text + "'!$K$33"
                    Workbooks.Open Filename:=ActiveWorkbook.Path + "\" + nom
                    ActiveWorkbook.ActiveSheet.PrintOut
                    ActiveWorkbook.Saved = True
                    ActiveWorkbook.Close
                    End If
                End If
                End With
    Next
    End Sub

  2. #2
    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
    Points : 15 546
    Points
    15 546
    Par défaut
    Un coup d'oeil dans la FAQ, SilkyRoad a écrit tout un article là-dessus
    Bonne lecture

  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
    Points : 15 546
    Points
    15 546
    Par défaut
    Edit
    C'est ici

  4. #4
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    merci pour votr lien. mais je suis débutant et je n'arrive pas a adapter mon code avec sa fonction. Par exemple comment transpoer le point .foundfile et .filename avec sa fonction ?

  5. #5
    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
    Points : 15 546
    Points
    15 546
    Par défaut
    Sans l'exemple du code que tu utilies, non, on ne peut pas
    Mais avec l'exemple, sans doute qu'on peut
    A+

  6. #6
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    mon code est au début du post.

  7. #7
    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
    Points : 15 546
    Points
    15 546
    Par défaut
    Citation Envoyé par laurent.mario Voir le message
    mon code est au début du post.
    Ce code là, je l'ai vu. Je parlais de l'adaptation du code proposé par SilkyRoad.
    Bon comme je ne vois pas foule pour te répondre, je vais te proposer autre chose qui, j'espère, fonctionnera aussi bien pour ma version d'Excel (2003) que pour la tienne. Mais pour ça tu dois me dire ce que tu veux faire.
    Déjà, pour vérifier l'existence d'un fichier dans un répertoire, tu peux faire
    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
    Sub lance()
    Dim NomFich$, Chemin$
    Dim Plage As Range, DerniereLigne As Long
    Dim CL1 As Workbook
    Dim FL1 As Worksheet
        Set CL1 = ActiveWorkbook
        Set FL1 = CL1.ActiveSheet
        Chemin = CL1.Path & "\"
        DerniereLigne = FL1.Cells(FL1.Columns(1).Cells.Count, 1).End(xlUp).Row
        Set Plage = FL1.Range("A1:A" & DerniereLigne)
        For Each Cell In Plage
            NomFich = "prix_" & Cell & ".xls"
            'NomFich = Cell & ".xls"
            NomComplet = Chemin & NomFich
            If Dir(NomComplet) <> "" Then
                Workbooks.Open Filename:=NomComplet
                'form = si tu veux créer un lien hypertexte, ce n'est pas la bonne syntaxe
              Else
                Workbooks.Open Filename:=Chemin + "prix_type.xls"
                ActiveWorkbook.SaveAs Filename:=Chemin & NomFich
                ActiveSheet.Name = Left(NomFich, Len(NomFich) - 4)
                ActiveSheet.Cells(4, 2).Formula = Mid(NomFich, 6, Len(NomFich) - 9)
                ActiveWorkbook.Save
            End If
        Next
    End Sub
    Pour un lien hypertexte, regarde ici... en espérant que rien n'ait changé en 2007...
    Teste déjà au moins ça et dis-nous ce qu'il manque.
    A+

Discussions similaires

  1. [XL-2007] problèmes sur excel 2007 de calcul
    Par jijie dans le forum Excel
    Réponses: 5
    Dernier message: 28/08/2009, 21h03
  2. Problème couleur Excel 2007
    Par zdz16 dans le forum Excel
    Réponses: 1
    Dernier message: 23/02/2009, 10h07
  3. Problème avec excel 2007
    Par bolltt dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/04/2008, 22h57
  4. Problème graphique excel 2007
    Par zippog dans le forum Excel
    Réponses: 2
    Dernier message: 13/08/2007, 15h49
  5. Problème Application.FileSearch excel 2007
    Par 13mike dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/08/2007, 10h31

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