XL 2016 Macro avec With End With

Bruce68

XLDnaute Impliqué
Bonsoir à tous
J' ai une macro sans With End With qui fonctionne et dés que je met With et end with ele ne fonctionne plus : erreur d exécution 1004
erreur définie par l'application ou par l'objet.
Voir fichier joint.
Je vous remercie de votre aide.
 

Pièces jointes

  • Macro avec et sans With End With.pdf
    273.4 KB · Affichages: 24

Bruce68

XLDnaute Impliqué
Bonsoir Sylvanu et Job78
Voici le code avec tous les points
La macro ne fonctionne toujours pas.
Je vous remercie de votre aide

VB:
With Sheets("Patients")
Application.ScreenUpdating = False

x = Application.CountIf(.Range("A2:A1000000"), ">""") + 1
    .Range(.Cells(2, 1), .Cells(x, 1)).Select

    Selection.Copy
    .Range("Tableau1[NONPrenom]").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
         Application.CutCopyMode = False
Application.ScreenUpdating = True
Sheets("Donnees").Select
End With
End Sub
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
En PJ un vrai fichier XL.
J'ai modifié quelques trucs. Cela coinçait sur le .Range("Tableau1[NONPrenom]").Select
( d'ailleurs le Select ne sert à rien )
VB:
Sub essai()
With Sheets("Patients")
    Application.ScreenUpdating = False

    x = Application.CountIf(.Range("A2:A1000000"), ">""") + 1
    .Range(.Cells(2, 1), .Cells(x, 1)).Copy
    
    .Range("NONPrenom").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End With
' Sheets("Donnees").Select           ' Invalidé pour test
End Sub
 

Pièces jointes

  • Classeur2.xlsm
    16.5 KB · Affichages: 2

Bruce68

XLDnaute Impliqué
Bonsoir Sylvanu
Merci pour la réponse et la macro
La macro seule dans un module fonctionne.
Je la place dans le ThisWorboot pour mettre à jour la feuille "Patients" don les infos sont dans le fichier formulaire Dans la colonne A de la feuille patients il n'y a que des formules de recup des données " NOMPrenom" la macro sert sert à transformer les valeurs en tableau Dynamique qui aliment une Liste déroulante
La macro s'arrête sur la ligne en gras avec toujours la même erreur
Je vous remercie pour l'aide


VB:
Sub MajTab()
 With Sheets("Patients")
    Application.ScreenUpdating = False

    x = Application.CountIf(.Range("A2:A1000000"), ">""") + 1
    .Range(.Cells(2, 1), .Cells(x, 1)).Copy
    
   [B] Range("Tableau1[NONPrenom]").Select[/B]
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End With
 Sheets("Donnees").Select
End Sub
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Cela coinçait sur le .Range("Tableau1[NONPrenom]").Select
Vous avez testé ma PJ ?
Pour coller une plage, il faut soit sélectionner une plage de même taille, soit sélectionner la première cellule.
Je ne sais pas ce que vous avez nommé NONPrenom mais la plage ne fait pas la bonne taille.
Remplacez Range("Tableau1[NONPrenom]").Select par Range("$A$2").Select par ex si le tableau1 NomPrénom commençait en A2.
 

soan

XLDnaute Barbatruc
Inactif
Bonsoir @JBARBE, le fil,

Tu as écrit : « Il y a un mot de passe dans le (projet) VBA (du fichier Excel) ! »

Si tu parles bien du post #8 de @Bruce68, comment peux-tu le savoir alors
que le fichier n'a pas été téléchargé ? tu es devin ? ou médium ? :oops:o_O

Image.jpg


soan
 

JBARBE

XLDnaute Barbatruc
Re,
essaye ceci :
VB:
Sub MajTab()
With Sheets("Patients")
    Application.ScreenUpdating = False
   .Range("C2:C65536").Clearcontents
    x = Application.CountIf(.Range("A2:A65536"), ">""") + 1
    .Range(.Cells(2, 1), .Cells(x, 1)).Copy
    .Range("C2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End With
Sheets("Donnees").Select
End Sub
Bonne nuit !
 

Discussions similaires

Statistiques des forums

Discussions
311 707
Messages
2 081 746
Membres
101 812
dernier inscrit
trufu