Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

rendre applicable à toute cellule une macro enregistrée sur une cellule

DOMIMARE

XLDnaute Nouveau
Je veux récupérer le contenu (texte) d’une cellule pour le mettre dans le commentaire de cette cellule. J’ai enregistré une macro que je nomme « verscomm”. Elle marche bien pour la cellule F8 (don’t le contenu est “Montaigne” et, pour laquelle j’ai créé, au paravant, un commentaire vide. Que faire pour la transformer en macro fonctionnant dans n’importe quelle cellule ? Il doit s’agir d’une astuce très simple de programmation.
Merci de toute aide
Domi
********************************
Sub verscomm()
'
' verscomm Macro
'
' Touche de raccourci du clavier: Ctrl+n
'
ActiveSheet.PasteSpecial Format:="Texte Unicode", Link:=False, _
DisplayAsIcon:=False, NoHTMLFormatting:=True
Range("F8").Comment.Text Text:="Montaigne"
Range("G9").Select
End Sub
***************************************************
 

jecherche

XLDnaute Occasionnel
Re : rendre applicable à toute cellule une macro enregistrée sur une cellule

Bonjour,

Je tente de comprendre ... j'espère apprendre avec tous ces essais.

Pour l'instant, je n'ai pas de solution ... désolé ...


Jecherche
 

jecherche

XLDnaute Occasionnel
Re : rendre applicable à toute cellule une macro enregistrée sur une cellule

Bonjour,

Il manquait une ligne : Set Cell = Cell.Select
Maintenant, je crois que ça fonctionne beaucoup mieux ... même sur une plage ...
Code:
Sub versComm()
Dim X, Nom, repertoirePhoto As String
Dim Cell As Range
Dim Img As Shape

repertoirePhoto = "C:\LesDocuments\Downloads\Domimare\" ' Adapter
On Error Resume Next
With ActiveSheet
  For Each Cell In Selection
    Nom = Cell.Value         
    Set Cell = Cell.Select
   .Pictures.Insert (repertoirePhoto & Nom & ".jpg") 
    .Shapes(Nom).LockAspectRatio = msoFalse
    .Shapes(Nom).Left = Cell.Left
    .Shapes(Nom).Top = Cell.Top
    .Shapes(Nom).Height = Cell.Height
    .Shapes(Nom).Width = Cell.Width
    Cell.AddComment               ' ajoute l'objet commenaire
    Cell.Comment.Visible = False  'le commentaire sera masqué
    Cell.Comment.Text Text:=Nom       'place le contenu de Nom dans l'objet commentaire
  Next
End Wi


Jecherche
 
Dernière modification par un modérateur:

jecherche

XLDnaute Occasionnel
Re : rendre applicable à toute cellule une macro enregistrée sur une cellule

Bonjour,

Set Cell = Cell.Select focalise sur la cellule particulière du traitement quand on est en traitement par lot (champ).


Jecherche
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…