1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
Option Explicit
Sub test()
Dim v As Variant
Dim Plage As Range
Dim C As Workbook
Dim F As Worksheet
Dim iL As Long
'On définit un variant qui ne consomme pas trop de mémoire
ReDim v(5, 5)
Set C = Workbooks.Add
Set F = C.Worksheets(1)
Application.ReferenceStyle = xlR1C1
iL = 1
v(0, 0) = "Texte11"
v(1, 0) = "Texte21"
v(2, 0) = "Texte31"
v(3, 0) = "Texte41"
v(4, 0) = "Texte51"
v(5, 0) = "Texte61"
v(0, 1) = "Texte12"
v(1, 1) = "Texte22"
'...
'...
v(5, 5) = "Texte55"
Set Plage = F.Range(F.Cells(iL, 1), F.Cells(iL + 5, 6))
Plage.FormulaArray = v
'on passe à la plage suivante
v(0, 0) = "Texte11"
v(1, 0) = "Texte21"
v(2, 0) = "Texte31"
v(3, 0) = "Texte41"
v(4, 0) = "Texte51"
v(5, 0) = "Texte61"
v(0, 1) = "Texte12"
v(1, 1) = "Texte22"
'...
'...
v(5, 5) = "Texte55"
iL = iL + 6
Set Plage = F.Range(F.Cells(iL, 1), F.Cells(iL + 5, 6))
Plage.FormulaArray = v
'on sauvegarde au format txt
C.SaveAs "C:\test.txt", FileFormat:=xlUnicodeText
End Sub |
Partager