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

XL 2021 Rechercher dans plusieurs fichiers

Usine à gaz

XLDnaute Barbatruc
Bonjour à toutes et à tous

En mars 2022, j'avais posté sur ce sujet et en août 2022, j'avais retenu la proposition (#Post144) de job75 (Gérard) qui fonctionne toujours nikel bien.
Merci à tous les intervenants et à Gérard

Mon besoin ayant évolué et je reviens sur le sujet...
Mon besoin d'aujourd'hui
- Quand quelqu'un m'appelle, c'est toujours que je l'ai appelé auparavant et je dois le rappeler au plus vite pendant qu'il est dispo.
Il me faut savoir, avant de le rappeler, ce j'ai mis dans les commentaires de mon appel précédent pour savoir comment je dois lui parler,

- Pour le savoir, il me faut ouvrir le classeur à l'aide du code de Gérard. Mais mon fichier est gros et l'ouverture est un peu longue.

Le code de Gérard est quasi instantané et me permettrait de rappeler presque immédiatement
- Il me faudrait dans le classeur qui contient le code de Gérard avoir les infos suivantes :
- (Le nom du réseau (col A du classeur de travail) - le nom de l'agent (col B du classeur de travail) - et mes commentaires (col L du classeur de travail)

Ma demande
J'ai tenté de modifier le code mais jusqu'à maintent, je n'ai pas réussi.

Pourriez-vous m'aider ? (lol ça m'arrangerait bien )
En cas, je joins les troix classeurs
- Le classeur avec le code de gérard qui contient les n° tests à chercher en feuille "n° à chercher"
- N° à coller "simple clic" en "M1"
- 2 classeurs de travail test (isiTel_Lionel Sextant 2024 01 17 et isiTel_Lionel Sextant2 2024 01 17 e )

Un très grand merci pour ce code qui me permettrait de rappeler au plus vite.
Entre temps, je continue à bidouiller...
 

Pièces jointes

  • isiTel_Lionel Sextant 2024 01 17.xlsx
    43.1 KB · Affichages: 8
  • isiTel_Lionel Sextant2 2024 01 17.xlsx
    43.1 KB · Affichages: 8
  • 01 Recherche numéro OK4bis.xlsm
    40.1 KB · Affichages: 8
Dernière édition:
Solution
Bonjour Lionel, le forum,
- Est-il possible que ça fonctionne aussi si classeurs ouverts ?
C'est une très bonne question.

En effet si le classeur .xlsx est ouvert ExecuteExcel4Macro crée un bug quand la feuille n'existe pas.

Je ne comprends pas la raison de ce bug mais pour y remédier utilise les fichiers joints avec :
VB:
            On Error Resume Next
            If IsError(ExecuteExcel4Macro(x & "R1C1")) Then 'vérifie que la feuille existe
            Else
                On Error GoTo 0
A+

job75

XLDnaute Barbatruc
Bonjour Lionel, le forum,

Je repasse par ici car j'étais ennuyé de t'avoir laissé tomber.

Mais j'étais aussi dépité de voir comment tu maltraites les codes que je te donne.

Pour ce problème j'ai simplement remis dans la feuille "Recherche" la macro écrite il y a 2 ans.

En la complétant pour entrer les données supplémentaires que tu veux en colonnes A B et J.

A+
 

Pièces jointes

  • isiTel_Lionel Sextant 2024 01 17.xlsx
    43.1 KB · Affichages: 5
  • isiTel_Lionel Sextant2 2024 01 17.xlsx
    43.1 KB · Affichages: 3
  • 01 Recherche numéro OK4bis.xlsm
    58.5 KB · Affichages: 6

Usine à gaz

XLDnaute Barbatruc
Bonjour gérard , le Forum

Je confirme, ton code est super génial et fonctionne nickel comme d'habitude.

Mais la, je pense que tu vas vraiment m'arracher la tête car en testant cette nuit dans toutes les situations possibles, il m'est apparu un nouveau besoin, plutôt un besoin complémentaire .... oserais-je ??

Bon, sauf ma tête, je ne risque rien à demander, alors, je me lance :
- le code fonctionne donc nickel si classeurs fermés,

J'aurais également besoin qu'il puisse fonctionner si les classeurs sont ouverts
- Est-il possible que ça fonctionne aussi si classeurs ouverts ?

 
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour Lionel, le forum,
- Est-il possible que ça fonctionne aussi si classeurs ouverts ?
C'est une très bonne question.

En effet si le classeur .xlsx est ouvert ExecuteExcel4Macro crée un bug quand la feuille n'existe pas.

Je ne comprends pas la raison de ce bug mais pour y remédier utilise les fichiers joints avec :
VB:
            On Error Resume Next
            If IsError(ExecuteExcel4Macro(x & "R1C1")) Then 'vérifie que la feuille existe
            Else
                On Error GoTo 0
A+
 

Pièces jointes

  • isiTel_Lionel Sextant 2024 01 17.xlsx
    43.1 KB · Affichages: 3
  • isiTel_Lionel Sextant2 2024 01 17.xlsx
    43.1 KB · Affichages: 3
  • 02 Recherche numéro OK4bis.xlsm
    58.8 KB · Affichages: 4

job75

XLDnaute Barbatruc
Bonjour Lionel, le forum,

Il n'est pas nécessaire de supprimer les formules.

D'autant que la protection les masque.

Le code est plus court et c'est un peu plus rapide.

Edit 1 : j'ai aussi ajouté une macro Worksheet_Activate :
VB:
Private Sub Worksheet_Activzte()
Worksheet_Change [M1] 'lance la macro
End Sub
Edit 2 : non elle ne sert à rien, je l'ai supprimée.

A+
 

Pièces jointes

  • isiTel_Lionel Sextant 2024 01 17.xlsx
    43.1 KB · Affichages: 2
  • isiTel_Lionel Sextant2 2024 01 17.xlsx
    43.1 KB · Affichages: 2
  • 03 Recherche numéro OK4bis.xlsm
    56.2 KB · Affichages: 1
Dernière édition:

Discussions similaires

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