Bonjour,
Dans une mcro j'ai besoin de faire un test (si colonne 5 du tableau = "pièces", alors OK.
je vous donne mon code et mon fichier.
J'ai un message d'erreure : next sans for
Lultras
Option Explicit
Dim tablo, tabloR(), f As Worksheet, i&, k&
Sub Extraction()
tablo = Range("F2:W" & Range("F" & Rows.Count).End(xlUp).Row)
Set f = ActiveSheet
k = 1
For i = 1 To UBound(tablo, 1)
If tablo(i, 17) < tablo(i, 18) Then
If tablo(i, 5).Value = "Pièces" Then
ReDim Preserve tabloR(1 To 18, 1 To k + 1)
tabloR(1, k) = tablo(i, 1)
tabloR(2, k) = tablo(i, 2)
tabloR(3, k) = tablo(i, 3)
tabloR(4, k) = tablo(i, 4)
tabloR(5, k) = tablo(i, 5)
tabloR(6, k) = tablo(i, 6)
tabloR(7, k) = tablo(i, 7)
tabloR(8, k) = tablo(i, 8)
tabloR(9, k) = tablo(i, 9)
tabloR(10, k) = tablo(i, 10)
tabloR(11, k) = tablo(i, 11)
tabloR(12, k) = tablo(i, 12)
tabloR(13, k) = tablo(i, 13)
tabloR(14, k) = tablo(i, 14)
tabloR(15, k) = tablo(i, 15)
tabloR(16, k) = tablo(i, 16)
tabloR(17, k) = tablo(i, 17)
tabloR(18, k) = tablo(i, 18)
k = k + 1
End If
Next i
If k = 1 Then Exit Sub
Sheets.Add after:=Sheets(1)
f.Range("F1:W1").Copy Range("F1")
Range("F2").Resize(UBound(tabloR, 2), 18) = Application.Transpose(tabloR)
f.Range("F:W").Copy
ActiveSheet.Range("F1").PasteSpecial xlPasteFormats
Application.CutCopyMode = False
Range("F1").Select
End Sub
A mon avis c'est ici que sa bug ^^ :
For i = 1 To UBound(tablo, 1)
If tablo(i, 17) < tablo(i, 18) Then
If tablo(i, 5).Value = "Pièces" Then