T
Timide
Guest
Bonjour à tous et particulièrement aux contributeurs dévoués.
La macro ci-dessous me fait des misères (XL97 et WIN NT)
le message suivant "erreur 424 - Objet requis" s'affiche quand je
tente de faire rajouter à la suite d'une cellule que j'ai appelée "derniere", les sections manquantes par rapport à une table définie dans une feuille
"valeurs références"
L'erreur que j'ai commise est sans doute de niveau débutant, mais j'ai ce qui me reste de cerveau complétement liquéfié.
Avez vous une idée de la correction de code à apporter ?
Merci de vos lumières.
ci dessous le code avec les commentaires
Sub ajoutsection()
'*******************************************************************
'
' Macro enregistrée le 15/05/2003 par M. Le Gorgeu en cours de complément le 6/08/2003
' recherche les sections dans la table N1:N32 de la feuille "valeursréférences"
' Va rajouter une ligne pour chaque section manquante
' située en colonne B:B de la feuille "stages" de façon
' à pouvoir être utilisé utilement dans un TCD
'
' Explication : dans le TCD de reporting certaines sections
' sont regroupées. Or si une section regroupée dans le code VBA
' n'existe pas sur la feuille "stage", VBA signale une erreur et
' arrête le traitement(si comme c'est le cas on n'a pas mis "on error resume next).
'
'*******************************************************************
Sheets("Valeursréférences").Select
Range("B2:B32").Select ' les sections 2003 sont sur cette plage
Selection.Copy
Sheets("Stage").Select
Range("N2").Select
ActiveSheet.Paste
Range("B1").End(xlDown).Offset(1, 0).Range("A1").Select ' positionnement sur la
'première cellule vide de la colonne B, pour y ajouter les sections manquantes
derniere = Selection.Address ' recupération de l'adresse de cette cellule
Range("n2:N32").Select 'en N2:N32 sont situées les sections
'je regarde ensuite si dans la plage située avant la cellule "derniere" une ou
'plusieurs sections situées dans la plage N2:N32 sont manquantes
'si oui je les rajoute
'le problème se situe ici dessous VBA n'aime manifestement pas
' B2:derniere
For Each c In Selection
If Application.CountIf(Range("B2:B3000"), c) = 0 Then
[B2:derniere].End(4)(2) = c.Value
End If
Next
End Sub
La macro ci-dessous me fait des misères (XL97 et WIN NT)
le message suivant "erreur 424 - Objet requis" s'affiche quand je
tente de faire rajouter à la suite d'une cellule que j'ai appelée "derniere", les sections manquantes par rapport à une table définie dans une feuille
"valeurs références"
L'erreur que j'ai commise est sans doute de niveau débutant, mais j'ai ce qui me reste de cerveau complétement liquéfié.
Avez vous une idée de la correction de code à apporter ?
Merci de vos lumières.
ci dessous le code avec les commentaires
Sub ajoutsection()
'*******************************************************************
'
' Macro enregistrée le 15/05/2003 par M. Le Gorgeu en cours de complément le 6/08/2003
' recherche les sections dans la table N1:N32 de la feuille "valeursréférences"
' Va rajouter une ligne pour chaque section manquante
' située en colonne B:B de la feuille "stages" de façon
' à pouvoir être utilisé utilement dans un TCD
'
' Explication : dans le TCD de reporting certaines sections
' sont regroupées. Or si une section regroupée dans le code VBA
' n'existe pas sur la feuille "stage", VBA signale une erreur et
' arrête le traitement(si comme c'est le cas on n'a pas mis "on error resume next).
'
'*******************************************************************
Sheets("Valeursréférences").Select
Range("B2:B32").Select ' les sections 2003 sont sur cette plage
Selection.Copy
Sheets("Stage").Select
Range("N2").Select
ActiveSheet.Paste
Range("B1").End(xlDown).Offset(1, 0).Range("A1").Select ' positionnement sur la
'première cellule vide de la colonne B, pour y ajouter les sections manquantes
derniere = Selection.Address ' recupération de l'adresse de cette cellule
Range("n2:N32").Select 'en N2:N32 sont situées les sections
'je regarde ensuite si dans la plage située avant la cellule "derniere" une ou
'plusieurs sections situées dans la plage N2:N32 sont manquantes
'si oui je les rajoute
'le problème se situe ici dessous VBA n'aime manifestement pas
' B2:derniere
For Each c In Selection
If Application.CountIf(Range("B2:B3000"), c) = 0 Then
[B2:derniere].End(4)(2) = c.Value
End If
Next
End Sub