formule alternative ou macro

salsitawapa

XLDnaute Occasionnel
Bonjour, j'ai une formule qui me dit si c'est tel heure, alors me mettre tel case :
Code:
=SI(L1<L3;O2;SI(L1=L3;O3;SI(L1=L4;O4;SI(L1=L5;O5;SI(L1=L6;O6;SI(L1=L7;O7;SI(L1=L8;O8;SI(L1=L9;O9;SI(L1=L10;O10;SI(L1=L11;O11;SI(L1=L12;O12;SI(L1=L13;O13;SI(L1=L14;O14;SI(L1=L15;O15;SI(L1=L16;O16;SI(L1=L17;O17;SI(L1=L18;O18;SI(L1=L19;O19;SI(L1=L20;O20;SI(L1=L21;O21;SI(L1=L22;O22;SI(L1=L23;O23;SI(L1=L24;O24;SI(L1=L25;O25;SI(L1=L26;O26;SI(L1=L27;O27;SI(L1=L28;O28;SI(L1=L29;O29;SI(L1=L30;O30;SI(L1=L31;O31;SI(L1=L32;O32;SI(L1=L33;O33;SI(L1=L34;O34;SI(L1=L35;O35;SI(L1=L36;O36;SI(L1=L37;O37;SI(L1=L38;O38;SI(L1=L39;O39;SI(L1=L40;O40;SI(L1=L41;O41;SI(L1=L42;O42;SI(L1=L43;O43;SI(L1=L44;O44;SI(L1=L45;O45;SI(L1=L46;O46;SI(L1=L47;O47;SI(L1=L48;O48;SI(L1=L49;O49;SI(L1=L50;O50;SI(L1=L51;O51;SI(L52=L1;O52;O53)))))))))))))))))))))))))))))))))))))))))))))))))))

Le soucis, c'est que si j'ai plus d'une lignes d'inscrite en B2 : D2, le résultat me met automatiquement un 0 si je clic sur 19:00 ; 19:05 ; ou 19:10
J'ai essayé avec un rechercheV mais il ne me recherche pas les heures...
J'ai essayé de réduire les heures en nombre avec 30 décimal mais pas mieux.
J'ai essayé une macro :
Code:
Sub rechercheV()
Sheets("Feuil3").Select
Range("I2").FormulaR1C1 = "=RECHERCHEV($P1;P2:Q52;2;FAUX)"
End Sub
Elle ne fonctionne pas
Connaissez vous une alternative à tout ça SVP ?
Merci
 
Dernière édition:

salsitawapa

XLDnaute Occasionnel
Re : formule alternative ou macro

Pas de soucis, je continue la dessus alors car c'est autre chose (de mon même projet).
Voila j'ai allégé et j'ai juste mis la partie concerné.
En I1, on a un numéro qui apparaît. Ce numéro est très important car suivant le numéro, il me colle les cases qui ont été copié à un endroit (endroit différent sur chaque numéro).
J'ai testé avec 1 ligne B2 : C2 ça fonctionne.
Avec 2 lignes j'ai 10 horaires qui ne fonctionnent pas (1815, 1840, 1900, 1925, 1950, 2015, 2035, 2100, 2125, 2150).
Avec 3 lignes j'en ai 19 qui ne fonctionnent pas (1840, 1845, 1900, 1905, 1910, 1925, 1930, 1950, 1955, 2015, 2020, 2035, 2040, 2100, 2105, 2125, 2130, 2150, 2155).
Désolé je n'ai pas mis les ":" c'est pour éviter les smileys...

Voila j'aimerai donc enlever la formule I1 qui ne fonctionne pas à 100% pour la remplacer par une formule ou macro qui sera sans faille...

Un exemple court sur I1, =si(L1=L3;O3).
J'ai donc testé sur I1, =RECHERCHEV(L1;L2:O52;4;FAUX) et même en décimal : =RECHERCHEV(P1;P2:p52;4;FAUX)
Merci
 

Pièces jointes

  • test.xlsm
    52.4 KB · Affichages: 40
  • test.xlsm
    52.4 KB · Affichages: 42
  • test.xlsm
    52.4 KB · Affichages: 41
Dernière édition:

Annette

XLDnaute Occasionnel
Re : formule alternative ou macro

Il me semble que les formules de la colonne M aillent chercher de l'information dans un autre classeur et que l'information devant être renvoyée en cellule M7 rencontre un problème.
En revanche, je n'ai pas compris l'histoire de vos tests B2:C2 et j'ai encore moins compris la finalité des actions :eek:.
Pourriez-vous nous en dire un peu plus ?

Cordialement
 

salsitawapa

XLDnaute Occasionnel
Re : formule alternative ou macro

J'ai rajouté la feuille ou ses données vont être cherchée... C'est juste pour me dire si l'horaire est libre ou non.

Pour les cellules de B2 à C2, j'ai des choses inscrite dedans, si je clique sur l'horaire souhaitée, ça fonctionne.
En revanche, si j'ai une seconde ligne (b2 à c3), les heures inscrite entre parenthèse de tout à l'heure ne fonctionnent pas.

C'est pourquoi je cherche désespérément une formule ou macro autre que se que j'ai mis en I1
 

Pièces jointes

  • test.xlsm
    56.6 KB · Affichages: 42
  • test.xlsm
    56.6 KB · Affichages: 42
  • test.xlsm
    56.6 KB · Affichages: 39

Annette

XLDnaute Occasionnel
Re : formule alternative ou macro

Voici peut-être un début de réponse.
Par contre je ne comprends pas le comportement de la cellule I1.
Y aurait-il interférence avec des macros ?

Edition:Je crois avoir compris que vous cherchez les créneaux horaires libres dans la colonne J ?

Cordialement
 

Pièces jointes

  • test-5.xlsm
    47.9 KB · Affichages: 44
Dernière édition:

salsitawapa

XLDnaute Occasionnel
Re : formule alternative ou macro

Oui je cherche les créneaux de libre d'ou la matrice. Je regarde ça dès que je serai rentré... Au pire je me dis que se sont les horaires qui sont la cause du mauvais résultat sur certaines cellules, si rien ne marche, je changerai l'écriture des heures. Je passerai de 19:00 à 1900 c'est pas gênant en soi... Mais je testerai avant la réponse, j'ai hâte de la voir... J'espère qu'un jour on aura accès aux macro sur Android j'aurais pu jetter un coup d'oeil...
 

salsitawapa

XLDnaute Occasionnel
Re : formule alternative ou macro

Hélas, j'avais déjà testé avec "vrai" en fin de formule... le vrai me renvoie sur une valeur proche, donc pas forcément la bonne...
J'ai également mal pensé puisque même si je passe en écriture 1900 pour 19:00, je n'ai plus une base 60 mais une base 100 donc c'était une très mauvaise idée que j'ai eu.
 

Annette

XLDnaute Occasionnel
Re : formule alternative ou macro

Bonjour salsitawapa, bonjour le forum,

Après plusieurs essais avec votre fichier post8, il semble que le fichier fonctionne correctement ...
Où est passé votre fichier exemple qui était attaché au fichier post6 ?
Si j'ai bien tout compris, le fichier exemple poserait un problème à certaines formules d'où mon idée de mettre la recherchev à vrai (il me semble que les résultats attendus étaient les bons sur certains tests).
Après, je ne vois pas trop. Pourriez-vous nous en dire un peu plus ?

Cordialement
 

salsitawapa

XLDnaute Occasionnel
Re : formule alternative ou macro

Bonjour, désolé pour le retard, j'ai encore fais des recherches toute l'après midi...
Je mets le fichier avec toutes les macros, vous verrez qu'il y a un soucis dans les horaire.
Si vous cliquez sur 18:15 en J6 de la feuille3, vous verrez que ma formule si en I1 renvoie 0 alors que la formule rechercheV en I2 revoie 4 au lieu de 6.
Je n'arrive plus à comprendre grand chose...
J'ai essayé d'intégrer directement dans la macro
Code:
Sub CopierColler()

    Sheets("Feuil3").Select
    If Range("$A$2") = Range("L2") Then
    Sheets("Feuil1").Select
    Range("B2").Select
    ActiveSheet.Paste
    End If
 If Range("$A$2") = Range("L3") Then
    Sheets("Feuil1").Select
    Range("B3").Select
    ActiveSheet.Paste
    End If
et ainsi de suite jusqu'au bout, mais ça a été pire...
Voila si quelqu'un à une idée de pourquoi ça ne fonctionne pas (problème dans les matrices de "J", le fait que se soit une formule en "A2", etc...) n'hésitez pas...

Merci
 

Pièces jointes

  • test.xlsm
    96.2 KB · Affichages: 32
  • test.xlsm
    96.2 KB · Affichages: 30
  • test.xlsm
    96.2 KB · Affichages: 30

Annette

XLDnaute Occasionnel
Re : formule alternative ou macro

Bonsoir salsitawapa, bonsoir le forum,

S'il s'agit d'un problème de macros (ça a l'air d'être le cas), j'avoue que mon incompétence en la matière est de mise.
Surement qu'un Barbatruc ou MegaBarbatruc saura vous trouver une solution...
Il est vrai que les formules se comportaient bizarrement mais le programme avait l'air de fonctionner, non ?

Bon courage.

Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
312 203
Messages
2 086 195
Membres
103 153
dernier inscrit
SamirN