Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

probleme de boucle

  • Initiateur de la discussion Initiateur de la discussion gege21
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

gege21

XLDnaute Occasionnel
bonjours a tous
voici mon problème
j'ai une macro ou j'importe des données txt
en "H4" je donne le chemin
et en "H5" le nom du fiche txt
et si je ne renseigne pas la cellule "H4" rien ne se passe (normale)
et si je ne renseigne pas la cellule "H5" ma macro tourne en boucle
donc je voudrai que si "H4" n'est pas remplie un userform me le signale
et si "H5" n'est pas remplie que la macro ne tourne plus en boucle et qu'elle me le signale aussi par un user forme
🙄
Code:
Sub import_données_mini_maxi()

    Dim myDir$, fn$, txt$, sepa$, a(), dl As Long
    Dim n As Long, i As Long, f As Long, ff As Integer
    Dim d As Worksheet
    sepa = ";"
    myDir = ThisWorkbook.Sheets(2).[h4]
    fn = Dir(myDir & ThisWorkbook.Sheets(2).[h5])
    Do While fn <> ""
        ff = FreeFile
        Open myDir & fn For Input As #ff
        Do While Not EOF(ff)
            Line Input #ff, txt
            n = n + 1: ReDim Preserve a(1 To n)
            a(n) = Split(txt, sepa)
         Loop
        Close #ff
        fn = Dir()
    Loop
    Set d = ThisWorkbook.Sheets(4)
    With d
    With .[A1]
        For i = 2 To n
            .Offset(i - 1).Resize(, UBound(a(i)) + 1).Value = a(i)
            dl = d.[A65536].End(xlUp).Row
                .Resize(dl).TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
                ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(1, 4)
                Next
    End With
    End With
End Sub
 
Re : probleme de boucle

Bonsoir Gégé,
if Sheets(2).[h4]="" or Sheets(2).[h5]="" then
msgbox "Vous devez remplir H4 et H5",, vbExclamation, "Erreur"
End if

Prévoir une gestion d'erreur au cas ou le fichier n'existe pas.
Bruno
 
Re : probleme de boucle

bonjour et merci Bruno

le problème et que si les chemin entre dans les cellule sont faux il ne se passe rien il aurai fallut une alerte aussi
et pour la cellule h5 la macro tourne toujours en boucle
😕
 
Re : probleme de boucle

Pas rapide mais c'est mieux que rien
Donc voici, verifie que le "\" soit entre le chemin & fichier
Bruno
Code:
Sub import_données_mini_maxi()

    Dim chemin As String, fichier As String
    Dim fn$, txt$, sepa$, a(), dl As Long
    Dim n As Long, i As Long, f As Long, ff As Integer
    Dim d As Worksheet
    sepa = ";"
    chemin = ThisWorkbook.Sheets(2).[h4]
    fichier = ThisWorkbook.Sheets(2).[h5]
        ff = FreeFile
        On Error Resume Next
        Open chemin & fichier For Input As #ff
        If Err > 0 Then _
        MsgBox "Fichier non trouvé", vbExclamation, "Erreur sur le fichier": Exit Sub
        Do While Not EOF(ff)
            Line Input #ff, txt
            n = n + 1: ReDim Preserve a(1 To n)
            a(n) = Split(txt, sepa)
         Loop
        Close #ff
        fn = Dir()
      Set d = ThisWorkbook.Sheets(4)
    With d
    With .[A1]
        For i = 2 To n
            .Offset(i - 1).Resize(, UBound(a(i)) + 1).Value = a(i)
            dl = d.[A65536].End(xlUp).Row
                .Resize(dl).TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
                ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(1, 4)
                Next
    End With
    End With
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
746
Réponses
15
Affichages
798
Réponses
3
Affichages
754
Réponses
2
Affichages
875
Réponses
2
Affichages
609
Réponses
9
Affichages
684
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…