'D'après une source de L. Longre
Sub test()
Dim UsedRange As Range
Dim NbCols As Integer, NbLignes As Long
Dim Stat As Integer, Incr As Integer
Dim i As Integer, j As Integer
Dim x As Integer
Dim Progr As Integer
Open 'c:\\Export.csv' For Output As #1
For x = 1 To ThisWorkbook.Sheets.Count
With Worksheets(x)
.Select
.Range('A1').CurrentRegion.Select
End With
Set UsedRange = Worksheets(x).UsedRange
NbCols = UsedRange.Columns.Count - 1
NbLignes = UsedRange.Rows.Count
Stat = NbLignes / 40
Incr = Stat
For i = 1 To NbLignes
If i = Stat Then
Stat = Stat + Incr
Progr = Progr + 1
'Application.StatusBar = 'Exportation ' & String(Progr, '.')
End If
For j = 1 To NbCols
Print #1, CStr(UsedRange(i, j)) & ';';
Next j
Print #1, CStr(UsedRange(i, j))
Next i
Next x
Close 1
msgbox 'Exportation terminée.', vbokonly
End Sub