export txt le point a la place de la virgule

lolonene

XLDnaute Nouveau
Bonsoir,

J'utilise cette macro pour exporter dans un fichier txt la valeur d'une cellule.

Sub CreateAfile
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\fichiertest.txt", True)
a.Write (Sheets("Exporter").Range("d3").Value)
a.Close
End Sub

Dans le fichier texte la valeur est écrite avec une virgule (9,55) mais pour mon utilisation de mon fichier, j'aurais besoin qu'elle soit écrit avec un point (9.55).
Cela est il possible ?
Merci d'avance
 

Staple1600

XLDnaute Barbatruc
Re : export txt le point a la place de la virgule

Re


De cette facon par exemple

Code:
Sub csvfile()
 'SOURCE:http://www.ozgrid.com/forum/showthread.php?t=63300&highlight=csv+export
    Dim fs As Object, a As Object, i As Integer, s As String, t As String, l As String, mn As String
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set a = fs.CreateTextFile("c:\xltext.csv", True)
     
    For r = 1 To Range("A65536").End(xlUp).Row 
        s = ""
        c = 1
        While Not IsEmpty(Cells(r, c))
        s = s & Cells(r, c) & "." ' avec point 
            c = c + 1
        Wend
        a.writeline s 'write line
    Next r
     
End Sub

avec quelques lègères adaptations évidemment
 

bqtr

XLDnaute Accro
Re : export txt le point a la place de la virgule

Bonsoir lolonene, Staple1600

Comme ceci ,cela inscrit 9.55 dans le fichier txt, sans changer la valeur de D3 dans le fichier xls.

Code:
Sub CreateAfile()
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\fichiertest.txt", True)
Dim valeur
valeur = Replace(Sheets("Feuil2").Range("D3").Value, ",", ".")
a.Write valeur
a.Close
End Sub

bonne nuit
 

Staple1600

XLDnaute Barbatruc
Re : export txt le point a la place de la virgule

Bonjour


En direct de chez nos amis anglophones

(Monsieur LACHER en l'occurence)
Code:
Sub VBADotExport() 

' Dimension all variables 
Dim DestFile As String 
Dim FileNum As Integer 
Dim ColumnCount As Integer 
Dim RowCount As Integer 

' Prompt user for destination filename 

DestFile = InputBox("Enter the destination filename" _ 
& Chr(10) & "(with complete path):", "Quote-Comma Exporter") 

' Obtain next free file handle number 
FileNum = FreeFile() 

' Turn error checking off 
On Error Resume Next 

' Attempt to open destination file for output 
Open DestFile For Output As #FileNum 

' If an error occurs report it and end 
If Err <> 0 Then 

MsgBox "Cannot open filename " & DestFile 
End 

End If 

' Turn error checking on 
On Error GoTo 0 

' Loop for each row in selection 
For RowCount = 1 To Selection.Rows.Count 

' Loop for each column in selection 
For ColumnCount = 1 To Selection.Columns.Count 

' Write current cell's text to file with quotes 
Print #FileNum, """" & Selection.Cells(RowCount, _ 
ColumnCount).Text & """"; 

' Check if cell is in last column 
If ColumnCount = Selection.Columns.Count Then 

' If so then write a blank line 
Print #FileNum, 
Else 

' Otherwise write a comma 
Print #FileNum, "."; 

End If 

' Start next iteration of ColumnCount loop 
Next ColumnCount 

' Start next iteration of RowCount loop 
Next RowCount 

'Close destination file 
Close #FileNum 

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 391
Messages
2 087 954
Membres
103 685
dernier inscrit
janguypol