Extraire certaines données EXCEL vers Fichiers TXT

  • Initiateur de la discussion Initiateur de la discussion benny47
  • 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 !

B

benny47

Guest
Bonjour,

J'utilise actuellement un fichier excel déja "VBA lisé"...
Voilà, j'aimerais extraire certaines données de ce tableau et les envoyer dans un fichier TXT ( en le créant au passage grace à un petit bouton ).

Il faudrait simplement que les données qui sont à la suite sur la ligne 1 et celle qui sont également à la suite sur la ligne 2 etc etc ... se mettent l'une en dessous de l'autre dans le fichier TXT ( tout simplement ... ! )

Mais apparemment trop compliqué pour moi ...

Merci !
 
Re : Extraire certaines données EXCEL vers Fichiers TXT

ok .. le temps..
j'avais pas vu .. dans ton edit ..
OK !

Sinon, pour mes revoi à la ligne ? t'as une idée de code à rajouter dans le code version é (j'utilise celui là .. )
 
Re : Extraire certaines données EXCEL vers Fichiers TXT

Re,

j'aimerais aussi que mon code revoi automatiquement la valeur à la ligne ( dans le fichier texte )...

Ben, moi je porte des lunettes depuis pas mal de temps, c'est bien utile 😛

A moins que vous vouliez supprimer les espaces sur les textes renvoyés à la ligne :

Code:
rest(n) = Trim(Mid(t, p + 1))
Dossier (4).

A+
 

Pièces jointes

Re : Extraire certaines données EXCEL vers Fichiers TXT

ok ok ..
excuse .. mais c vrai que sans mon code, on a du mal à se comprendre ..
Mais on y arrive !! ( enfin surtout moi ..)
Reste une Derniére chose !! (promis ..)
Dans le fichier txt, quand tu l'ouvre, j'aimerais remplacer la date ( ligne 3 ) par la mienne, le"1" ligne 5, le "2" ligne 7 ...etc ..
En faite, toutes les valeurs chiffres ou lettres qu'il y a aprés les "=" ..

C'est pour ça que je voulais pouvoir integrer mes valeurs de cellules Excel dans ce fichier txt ..

Comprend tu ?..

Merci again & again & again ...
 
Re : Extraire certaines données EXCEL vers Fichiers TXT

Re,

Comprend tu ?..

Pas du tout, je crains de commencer un Alzheimer 🙁

Un détail encore : pour les lignes CARR=00 le renvoi à la ligne donne 0.

Pour l'éviter il faut déclarer les tableaux rest et trans de type String ($) :

Code:
Dim tablo, t, rest$(), p As Integer, n As Long, trans$()
Dossier (5).

A+
 

Pièces jointes

Re : Extraire certaines données EXCEL vers Fichiers TXT

Re, [Edit] salut jpb388,

Bon, dans le fichier Pilote(6) j'ai mis 100 valeurs de remplacement (la 1ère est la date du jour).

La macro :

Code:
Sub TXT()
Dim remplace, ub&, r&, tablo, t, rest$(), p%, n&, trans$()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
remplace = Range("A1:A2", Cells(Rows.Count, 1).End(xlUp))
remplace(2, 1) = [A2].Text 'date formatée
ub = UBound(remplace)
r = 1
With Workbooks.Open(ThisWorkbook.Path & "\Fichier txt.txt").Sheets(1)
  tablo = .Range("A1:A2", .Cells(.Rows.Count, 1).End(xlUp))
  For Each t In tablo
    ReDim Preserve rest(n)
    p = InStr(t, "=")
    If p And p < Len(t) Then
      rest(n) = Left(t, p)
      n = n + 1
      r = r + 1
      ReDim Preserve rest(n)
      If r <= ub Then rest(n) = remplace(r, 1) Else rest(n) = Trim(Mid(t, p + 1))
    Else
      rest(n) = t
    End If
    n = n + 1
  Next
  '---transposition---
  ReDim trans(n - 1, 0)
  For n = 0 To n - 1
    trans(n, 0) = rest(n)
  Next
  .[A1].Resize(n) = trans
  .Parent.SaveAs .Parent.Path & "\" & .Parent.Name, xlText
  .Parent.Close
End With
End Sub
Dossier (6).

A+
 

Pièces jointes

Re : Extraire certaines données EXCEL vers Fichiers TXT

Re,

Bien entendu, s'il s'agit juste de remplacer, sans retour ligne, c'est plus simple :

Code:
Sub TXT()
Dim remplace, ub&, r&, tablo, i&, p%
Application.ScreenUpdating = False
Application.DisplayAlerts = False
remplace = Range("A1:A2", Cells(Rows.Count, 1).End(xlUp))
remplace(2, 1) = [A2].Text 'date formatée
ub = UBound(remplace)
r = 1
With Workbooks.Open(ThisWorkbook.Path & "\Fichier txt.txt").Sheets(1)
  tablo = .Range("A1:A2", .Cells(.Rows.Count, 1).End(xlUp))
  For i = 1 To UBound(tablo)
    p = InStr(tablo(i, 1), "=")
    If p Then
      r = r + 1
      If r <= ub Then tablo(i, 1) = Left(tablo(i, 1), p) & remplace(r, 1)
    End If
  Next
  .[A1].Resize(UBound(tablo)) = tablo
  .Parent.SaveAs .Parent.Path & "\" & .Parent.Name, xlText
  .Parent.Close
End With
End Sub
Dossier joint.

A+
 

Pièces jointes

Re : Extraire certaines données EXCEL vers Fichiers TXT

Bonjour benny47, le forum,

Avec la version (6), une fois la macro exécutée, on ne pouvait plus modifier Fichier txt.

Cette version (7) permet de modifier les valeurs sous le signe =.

Sans instructions claires de votre part on fait marcher la boule de cristal.

A+
 

Pièces jointes

Re : Extraire certaines données EXCEL vers Fichiers TXT

hello !!
Merci à tous (job75 !, JPB388 ) de m'avoir aidé !!
avec tout ça, je vais trouver ma soluce !! mais "job75" t'as derniére soluce avec sans retour ligne m'a l'air parfaite pour mon probléme !
J'ai plus qu'a adapté ce code sur le mien !!
Encore merci pour tout !!!
MERCI !
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour