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.