Option Explicit
Sub Initmapomme()
Const nbrlig = 100000
Dim i&, c$, Ti
Ti = Timer
ReDim t(1 To nbrlig, 1 To 4)
Randomize
For i = 1 To UBound(t)
t(i, 1) = i + 1
t(i, 2) = "Toto" & (1 + Int(10000 * Rnd))
Select Case Int(3 * Rnd)
Case 0: t(i, 3) = Replace(t(i, 2), "o", "a")
Case 1: t(i, 3) = Replace(t(i, 2), "o", "i")
Case 2: t(i, 3) = Replace(t(i, 2), "o", "u")
End Select
t(i, 4) = Int(10000 * Rnd) / 100#
Next i
Application.ScreenUpdating = False
Cells(2, "a").Resize(nbrlig, 3) = t
Cells(2, "p").Resize(nbrlig) = Application.Index(t, 0, 4) 'ici bug
MsgBox Format(Timer - Ti, "0.000\ sec.")
End Sub