Erreur 400
Stien
-
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un petit soucis d'erreur 400 dans mon code et je ne trouve absolument pas la provenance. J'ai cherché sur les forums mais je n'ai rien trouvé qui m'a aidé avec ce problème. Je vous laisse mon code en espérant que quelqu'un soit plus calé que moi.
L'erreur se met une fois que la boucle est passée 3 fois. Il me manque donc un copier coller pour finir ma macro.
Le plus curieux c'est que j'ai à nouveau cette erreur dans ma macro suivante :
Cela peut être du au nombre de ligne maximal d'excel ? je suis à 1 021 012 et je souhaite encore en coller 400 000.
Je suis sous Excel 2012
J'ai un petit soucis d'erreur 400 dans mon code et je ne trouve absolument pas la provenance. J'ai cherché sur les forums mais je n'ai rien trouvé qui m'a aidé avec ce problème. Je vous laisse mon code en espérant que quelqu'un soit plus calé que moi.
Sub Macro_Test()
ActiveSheet.Name = "M1"
Dim fois As Long
Dim shMR As Worksheet
Set shMR = Sheets.Add(After:=Sheets(Sheets.Count))
shMR.Name = "Mapping Result"
Dim shdate As Worksheet
Set shdate = Sheets.Add(After:=Sheets(Sheets.Count))
shdate.Name = "Date"
For fois = 1 To 4
Sheets("M1").Activate
Range("G1:G" & Range("C400000").End(xlUp).Row).Copy
'On peut agrandir le 400 000 pour un fichier qui fait plus de 400 000 lignes
Sheets("Mapping Result").Range("B" & Rows.Count).End(xlUp)(3).PasteSpecial Paste:=xlPasteValues
Next fois
L'erreur se met une fois que la boucle est passée 3 fois. Il me manque donc un copier coller pour finir ma macro.
Le plus curieux c'est que j'ai à nouveau cette erreur dans ma macro suivante :
Sub Test_2()
Sheets("M1").Activate
Range("H1048576").Select
Selection.End(xlUp).Select
Range(Selection, Selection.End(xlUp)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Mapping Result").Range("C" & Rows.Count).End(xlUp)(3).PasteSpecial Paste:=xlPasteValues
Sheets("M1").Activate
Range("I1048576").Select
Selection.End(xlUp).Select
Range(Selection, Selection.End(xlUp)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Mapping Result").Range("C" & Rows.Count).End(xlUp)(3).PasteSpecial Paste:=xlPasteValues
Sheets("M1").Activate
Range("J1048576").Select
Selection.End(xlUp).Select
Range(Selection, Selection.End(xlUp)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Mapping Result").Range("C" & Rows.Count).End(xlUp)(3).PasteSpecial Paste:=xlPasteValues
'Ici se situe l'erreur 400 ça ne me colle pas mon dernier block.
Sheets("M1").Activate
Range("K1048576").Select
Selection.End(xlUp).Select
Range(Selection, Selection.End(xlUp)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Mapping Result").Range("C" & Rows.Count).End(xlUp)(3).PasteSpecial Paste:=xlPasteValues
End Sub
Cela peut être du au nombre de ligne maximal d'excel ? je suis à 1 021 012 et je souhaite encore en coller 400 000.
Je suis sous Excel 2012
3 réponses
-
Bonjour,
Sure que vous ne pouvez pas mettre 1421012 lignes dans 1048576 maxi lignes pour excel2007-2013 -
Tu dépasses, je pense, le nombre de lignes maximum d'un onglet dans Excel qui, après la version Office 2003, est passé de 65 536 lignes à 1 048 576 lignes.
-
Re,
ecrire le fichier CSV de cette facon, voir le format des donnees dans le fichier CSV:
Sub Test_2() Dim Fichier_CSV As String Dim Chemin As String Dim TInfos As Range 'adaptez le chemin et le nom de fichier Chemin = "D:\_ACSV\" Fichier = "MonCSV.CSV" Close TCol = Array("H", "I", "J", "K") Open Chemin & Fichier For Output As #1 With Sheets("M1") For LC = 0 To 3 derlig = .Range(TCol(LC) & Rows.Count).End(xlUp).Row Set TInfos = .Range(TCol(LC) & "1:" & TCol(LC) & derlig) FT = TInfos.Count For P = 1 To FT Print #1, TInfos(P) Next P Next LC End With Close MsgBox "Terminé" End Sub