Extraction données / erreur d’exécution Autofill
Résolu
Boriserge
Messages postés
4
Statut
Membre
-
yg_be Messages postés 24281 Statut Contributeur -
yg_be Messages postés 24281 Statut Contributeur -
Bonjour,
Je réalise des extraction de données à partir d'un logiciel,
Je dois réaliser des extractions mois par mois en entrant une plage de date ( date début / date fin )
A partir d'une certaine date l'extraction ne fonctionne plus et le message d'erreur suivant s'affiche :
"Erreur d'execution '1004'
La méthode Autofill de la classe Range a échoué."
Je suis débutant sur VBA et j'utilise un fichier que je ne n'ai pas créé.
La partie qui semble poser problème est la suivante :
Merci d'avance pour votre aide.
Je réalise des extraction de données à partir d'un logiciel,
Je dois réaliser des extractions mois par mois en entrant une plage de date ( date début / date fin )
A partir d'une certaine date l'extraction ne fonctionne plus et le message d'erreur suivant s'affiche :
"Erreur d'execution '1004'
La méthode Autofill de la classe Range a échoué."
Je suis débutant sur VBA et j'utilise un fichier que je ne n'ai pas créé.
La partie qui semble poser problème est la suivante :
Public Sub LoadDataFromBPCS() BPCS.Range("B7").ListObject.QueryTable.Refresh BackgroundQuery:=False Dim ws As Worksheet Set ws = Sheets("Exped_BPCS") Dim nbLignes As Integer nbLignes = ws.Range("tab_BPCS").Rows.Count ws.Range(ws.Cells(7, 10), ws.Cells(7, 10)).AutoFill Destination:=ws.Range(ws.Cells(7, 10), ws.Cells(nbLignes + 7, 10)) Lison.Select If LoadDataReplace Then Call Analysis.GenerateAnalysis End Sub
Merci d'avance pour votre aide.
A voir également:
- Extraction données / erreur d’exécution Autofill
- Trier des données excel - Guide
- Supprimer les données de navigation - Guide
- Sauvegarde des données - Guide
- Erreur 0x80070643 - Accueil - Windows
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
3 réponses
tu peux probablement éviter le message d'erreur en remplaçant
par
je ne sais pas si l'ensemble va bien fonctionner.
ws.Range(ws.Cells(7, 10), ws.Cells(7, 10)).AutoFill destination:=ws.Range(ws.Cells(7, 10), ws.Cells(nbLignes + 7, 10))
par
If nbLignes > 0 Then ws.Range(ws.Cells(7, 10), ws.Cells(7, 10)).AutoFill destination:=ws.Range(ws.Cells(7, 10), ws.Cells(nbLignes + 7, 10)) End If
je ne sais pas si l'ensemble va bien fonctionner.