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

XL 2013 Transférer un classeur avec macro complémentaire

  • Initiateur de la discussion Initiateur de la discussion Jouxte
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Jouxte

XLDnaute Occasionnel
Bonjour à toutes et tous,

J'utilise un pack de macros complémentaires bien pratique.
Je souhaiterai transférer un fichier comprenant des formules issues de ces macros complémentaires.
Y a-t-il un moyen pour lier (intégrer) les fonctions de ce fichier xlam au fichier xlsx/xlsm ?

Merci par avance pour vos réponses.
 
La fonction Excel RECHERCHE_X recherche une valeur dans une plage de cellules et renvoie une valeur à la même position dans une autre plage de cellules.
 
Essaie :

VB:
Function RECHERCHE_X(rech, CH, Dest)
  Dim C As Variant, X As Variant
  Application.Volatile
  If CH.Rows.Count = Dest.Rows.Count And CH.Columns.Count = Dest.Columns.Count Then
    Set C = CH.Find("*", , , , xlByRows, xlPrevious)
    If Not C Is Nothing Then
      h = C.Row - CH.Row + 1
      l = C.Column - CH.Column + 1
      RECHERCHE_X = Application.Index(Dest, h, l)
    End If
  End If
End Function

Daniel
 
Suis-je bête !

VB:
Function RECHERCHE_X(rech, CH, Dest)
  Dim C As Variant, X As Variant
  Application.Volatile
  If CH.Rows.Count = Dest.Rows.Count And CH.Columns.Count = Dest.Columns.Count Then
    Set C = CH.Find(rech, , , , xlByRows, xlPrevious)
    If Not C Is Nothing Then
      h = C.Row - CH.Row + 1
      l = C.Column - CH.Column + 1
      RECHERCHE_X = Application.Index(Dest, h, l)
    End If
  End If
End Function

Daniel
 
Et même :

Code:
Function RECHERCHE_X(rech, CH, Dest)
  Dim C As Variant, X As Variant
  Application.Volatile
  If CH.Rows.Count = Dest.Rows.Count And CH.Columns.Count = Dest.Columns.Count Then
    Set C = CH.Find(rech, , , xlWhole, xlByRows, xlPrevious)
    If Not C Is Nothing Then
      h = C.Row - CH.Row + 1
      l = C.Column - CH.Column + 1
      RECHERCHE_X = Application.Index(Dest, h, l)
    End If
  End If
End Function

Daniel
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
8
Affichages
916
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…