Macro
L4460
Messages postés
1
Statut
Membre
-
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je souhaite coller un tableau type sur une cellule quelconque selectionnée par un clic de souris. N'ayant pas de connaissance en VBA, j'utilise l'enregistreur de macro. Quel sont les fonctions qui permettent d'afficher une notification et de récupérer les références de la cellule activée par la suite?
Voici le code que je souhaite compléter:
Sub Macro5()
'
' Macro5 Macro
'
Range("A1:L4").Select
Selection.Copy
AFFICHER LE MESSAGE "selectionner une cellule" JUSQU'AU CLIC DANS UNE CELLULE.
LA CELLULE SELECTIONNEE EST LE POINT D'INSERTION DU TABLEAU (A1L4)
Range(" ").Select
ActiveSheet.Paste
End Sub
Merci de votre aide
Je souhaite coller un tableau type sur une cellule quelconque selectionnée par un clic de souris. N'ayant pas de connaissance en VBA, j'utilise l'enregistreur de macro. Quel sont les fonctions qui permettent d'afficher une notification et de récupérer les références de la cellule activée par la suite?
Voici le code que je souhaite compléter:
Sub Macro5()
'
' Macro5 Macro
'
Range("A1:L4").Select
Selection.Copy
AFFICHER LE MESSAGE "selectionner une cellule" JUSQU'AU CLIC DANS UNE CELLULE.
LA CELLULE SELECTIONNEE EST LE POINT D'INSERTION DU TABLEAU (A1L4)
Range(" ").Select
ActiveSheet.Paste
End Sub
Merci de votre aide
A voir également:
- Macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro maker - Télécharger - Divers Utilitaires
- Actiona macro - Télécharger - Divers Utilitaires
1 réponse
Bonjour,
Réponse tardive, mais bon...
Cette ligne :
- si erreur 424 = Clic sur le bouton annuler de la box (Err = 424)
- si l'utilisateur sélectionne plusieurs cellules (Cel.Count <>1)
- si l'utilisateur choisit une cellule à l'intérieur de A1:L4 (Not Intersect(Range("A1:L4"), Cel))
Dans ces trois cas, le copié-collé ne se fait pas ET la boite de dialogue avec l'utilisateur reste apparente...
Pour laisser la possibilité d'annuler :
Cordialement,
Franck P
Réponse tardive, mais bon...
Sub Macro5()
Dim Cel As Range
'SELECTION DE LA CELLULE OU COLLER LES DONNEES :
Do
On Error Resume Next
Set Cel = Application.InputBox("La cellule sélectionnée est le point d'insertion du tableau", "Sélectionnez une cellule !", Type:=8)
'On affiche l'inputbox tant que l'on n'a pas une adresse de range valide :
Loop While Err = 424 Or Cel.Count <> 1 Or Not Intersect(Range("A1:L4"), Cel)
Range("A1:L4").Copy Cel
Set Cel = Nothing
End Sub
Cette ligne :
Loop While Err = 424 Or Cel.Count <> 1 Or Not Intersect(Range("A1:L4"), Cel) prends en compte les différents critères qui réaffichent l'inputBox, à savoir :
- si erreur 424 = Clic sur le bouton annuler de la box (Err = 424)
- si l'utilisateur sélectionne plusieurs cellules (Cel.Count <>1)
- si l'utilisateur choisit une cellule à l'intérieur de A1:L4 (Not Intersect(Range("A1:L4"), Cel))
Dans ces trois cas, le copié-collé ne se fait pas ET la boite de dialogue avec l'utilisateur reste apparente...
Pour laisser la possibilité d'annuler :
Dim Cel As Range
Do
On Error Resume Next
Set Cel = Application.InputBox("La cellule sélectionnée est le point d'insertion du tableau", "Sélectionnez une cellule !", Type:=8)
Loop While Cel.Count <> 1 Or Not Intersect(Range("A1:L4"), Cel)
Range("A1:L4").Copy Cel
Set Cel = Nothing
Cordialement,
Franck P