Erreur 400
Stien
-
f894009 Messages postés 17413 Statut Membre -
f894009 Messages postés 17413 Statut Membre -
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
A voir également:
- Erreur 400
- Erreur lors de l'enregistrement du contact - Forum Xiaomi
- Erreur 0x80070643 - Accueil - Windows
- Iptv erreur de lecture - Forum TV & Vidéo
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Canon f166 400 - Forum Logiciels
3 réponses
Bonjour,
Sure que vous ne pouvez pas mettre 1421012 lignes dans 1048576 maxi lignes pour excel2007-2013
Sure que vous ne pouvez pas mettre 1421012 lignes dans 1048576 maxi lignes pour excel2007-2013
Stien
Oui j'y ai seulement pensé par la suite, il existe peut-être une solution pour utiliser plus de lignes ? Mon fichier final doit-être en csv, je peux peut-être utiliser un autre logiciel ? des idées ?
NHenry
Messages postés
15479
Statut
Modérateur
366
Une base de données serait à conseiller pour ce genre de besoin.
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:
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