Importation fichier texte via userform

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 !

stargate

XLDnaute Nouveau
bonjour,

Comment peut-on supprimer les sauts de ligne lors d'une importation de fichier texte dans une cellule.


Voici le cheminement de mon fichier texte

Création avec le bloc note

Importation dans un textbox d'une userform

Sub LireFichier()

Dim valeur As Long
On Error GoTo notFile
Dim cible As String, fichier As String, NumClient As String
NumClient = frmRecherche.txtNumClient.Text
fichier = "D:\Application_Wahsroom\Listing_Rapport_Client\Rapport\" & NumClient & ".txt"

Open fichier For Input As #1
valeur = FileLen(fichier)
cible = Input(valeur, 1)
Close #1
frmRecherche.txtRapport = cible

notFile:
Exit Sub
End Sub

Puis pour l'imprimer avec le reste des coordonées client
j'immporte dans une cellule le contenu de la textbox

Private Sub cmdImprimer_Click()
Dim rapport As String
rapport = txtRapport
'Zone rapport

Range("A11: H47").Merge
Range("A11:H47").Select
ActiveCell.FormulaR1C1 = rapport
With ActiveCell.Characters(Start:=1, Length:=250).Font
.Name = "Calibri"
.FontStyle = "Normal"
.Size = 10
.ColorIndex = xlAutomatic
End With

With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlTop
End With
End Sub

mon code fonctionne bien mais dans la cellule, il me met les sauts de ligne
Comment les enlever??

une idée merci
 
Re : Importation fichier texte via userform

Bonjour


Une idée comme ça en passant


Ce ne serait pas du au fait que tes cellules soient fusionnées?


Peut-être qu'en testant avec
HorizontalAlignment = xlCenterAcrossSelection
Cela changera quelque chose

A+
 
Re : Importation fichier texte via userform

Re

Code:
Sub test()
Dim x As String
x = Chr(10) 'Chr(13)
ActiveCell.Value = Replace(ActiveCell.Text, x, vbNullString)
End Sub
Cela retire le saut de ligne
(reste à savoir si c'est chr(10) ou chr(13))

A adapter à ton code

edit: une solution équivalente (a tester)
Range("A11:H47") = WorksheetFunction.Substitute(rapport, Chr(10), vbNullString)

A+
 
Dernière édition:
Re : Importation fichier texte via userform

bon ok c'est bon avec le petit test de staple 1600


voici le code avec comme test de ne plus fusionner les cellules
(à mon avis cela ne changeait rien de travailler avec des cellules fusionnées)



Rows("21:21").RowHeight = 286.5

''Zone rapport
'
Dim x As String
'Range("A11: H47").Merge
Range("A21").Select
ActiveCell.FormulaR1C1 = rapport
With ActiveCell.Characters(Start:=1, Length:=250).Font
.Name = "Calibri"
.FontStyle = "Normal"
.Size = 10
.ColorIndex = xlAutomatic
End With

' Ton test

x = Chr(13)
ActiveCell.Value = Replace(ActiveCell.Text, x, vbNullString)

With Selection
.HorizontalAlignment = xlLeft

.VerticalAlignment = xlTop
End With


le chr(10) supprimait les sauts de ligne mais pas le caractère

ceci fonctionne aussi
Range("A21") = WorksheetFunction.Substitute(rapport, Chr(13), vbNullString)


Pour ninbihan le caractère était un point d'interrogation dans un rectangle
mais j'ai vu que cela changeait avec la police séléctionnée.

un grand 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

Discussions similaires

Réponses
4
Affichages
223
Réponses
5
Affichages
477
Retour