Set myrange = Worksheets("feuil1").Range("B2", Range("B2").End(xlDown))
parSet MyRange = .Range("B2:B" & .Range("B65536").End(xlUp).Row)
donc en enlevant les "." cela fonctionne (attention, j'ai testé directement sur mon fichier d'origine et pas sur le fichier test ci-joint !).Set myrange = Range("B2:B" & Range("B65536").End(xlUp).Row)
Sub Max()
Dim MyRange As Range, Reponse As String
With Sheets("feuil1")
Set MyRange = .Range("B2:B" & .Range("B" & .Rows.Count).End(xlUp).Row)
End With
Reponse = Application.WorksheetFunction.Max(MyRange)
MsgBox "la valeur max est " & Reponse
End Sub
.Offset(1, -1) = Application.WorksheetFunction.Max
Sheets("création").Range("E6:E17").Copy
With Sheets("BD").Range("C65000").End(xlUp).Rows
.Offset(1, 0).PasteSpecial Paste:=xlValue, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
.Offset(1, 12).FormulaR1C1 = Date
'.Offset(1, -1) = Application.WorksheetFunction.Max(Range("B2", Range("B2").End(xlDown)))proposition mth
[B].Offset(1, -1) = Application.WorksheetFunction.Max(Range("B2:B" & Range("B" & Rows.Count).End(xlUp).Row))
With Sheets("Feuil1")
Set myrange = .Range("B2:B" & .Range("B" & .Rows.Count).End(xlUp).Row)
End With
Set myrange = Sheets("Feuil1").Range("B2:B" & Range("B" & Rows.Count).End(xlUp).Row)
With Sheets("BD").Range("C65000").End(xlUp).Rows
With Sheets("BD")
With .Range("C65000").End(xlUp).Rows
.Offset(1, 0).PasteSpecial Paste:=xlValue, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
.Offset(1, 12).FormulaR1C1 = Date
End With
'.Offset(1, -1) = Application.WorksheetFunction.Max(Range("B2", Range("B2").End(xlDown)))proposition mth
.Range("C65000").End(xlUp).Rows.Offset(1, -1) = Application.Max(.Range("B2:B" & .Range("B" & .Rows.Count).End(xlUp).Row))
End With
Set myrange = Sheets("Feuil1").Range("B2:B" & Range("B" & Rows.Count).End(xlUp).Row)
Dim DerLig As Long
Sheets("création").Range("E6:E17").Copy
With Sheets("BD")
DerLig = .Range("C65000").End(xlUp).Row + 1
With .Cells(DerLig, 3)
.PasteSpecial Paste:=xlValue, Transpose:=True
.Offset(, 12).Value = Date
End With
.Cells(DerLig, 2) = Application.Max(.Range("B2:B" & .Range("B" & .Rows.Count).End(xlUp).Row))
End With
Bon, dis-moi si j'ai compris et n'hésite pas à me corriger et à m'apporter des précisions parce qu'il y a des infos que je n'ai pas comprises au niveau de la syntaxe :le fait de placer le "." évite de reprendre le nom de la feuille à laquelle on fait référence. Donc :Dim DerLig As Long
Sheets("création").Range("E6:E17").Copy
With Sheets("BD")
DerLig = .Range("C65000").End(xlUp).Row + 1
With .Cells(DerLig, 3)
.PasteSpecial Paste:=xlValue, Transpose:=True
.Offset(, 12).Value = Date
End With
.Cells(DerLig, 2) = Application.Max(.Range("B2:B" & .Range("B" & .Rows.Count).End(xlUp).Row))
End With
With Sheets("BD")
DerLig = .Range("C65000").End(xlUp).Row + 1
au sein de cette 1ère ligne vide, on sélectionne la cellule de la colonne C à partir de laquelle on colle les valeurs copiées (+ la date).With .Cells(DerLig, 3)
.PasteSpecial Paste:=xlValue, Transpose:=True
.Offset(, 12).Value = Date
End With
.Cells(DerLig, 2) = Application.Max(.Range("B2:B" & .Range("B" & .Rows.Count).End(xlUp).Row))
Pas de soucis car tout le monde profite des infos (et plus on est de fous...).j'ai un peu l'impression de squatter le fil de David ( tu m'en veux pas ? )
Dim DerLig As Long
Dim DerCol As Integer
Sheets("création").Range("E6:E17").Copy
With Sheets("BD")
DerLig = .Range("C65000").End(xlUp).Row + 1
With .Cells(DerLig, 3)
.PasteSpecial Paste:=xlValue, Transpose:=True
.Offset(, 12).Value = Date
With Sheets("AutreFeuille")
DerCol = .Range("IV1").End(xlToLeft).Column
End With
End With
.Cells(DerLig, 2) = Application.Max(.Range("B2:B" & .Range("B" & .Rows.Count).End(xlUp).Row))
End With