la fonction DECALER et les images

SPARKLETOF

XLDnaute Junior
Bonsoir,
je suis entrain de me faire sur excel un petit listing de ma collection de film et j'ai un problème pour faire apparaitre une image en fonction du nom de film.
Pourriez-vous m'aider ?
Je joins mon fichier au cas ou....
Merci d'avance
SKF
 

Pièces jointes

  • EXEMPLE.xls
    33 KB · Affichages: 421
  • EXEMPLE.xls
    33 KB · Affichages: 424
  • EXEMPLE.xls
    33 KB · Affichages: 426

mth

XLDnaute Barbatruc
Re : la fonction DECALER et les images

Bonjour Sparkletof,

Ci-joint un essai avec ton fichier en PJ.

J'ai commencé par nommer une zone "Affiche" avec :

Code:
=DECALER(LISTE!$A$1;EQUIV(MENU!$C$8;LISTE!$A$1:$A$10;0)-1;4;;)
(LISTE!$A$1:$A$10 à adapter bien sûr à ton besoin)

Ensuite dans l'onglet Menu, j'ai collé une image et j'ai saisi =Affiche dans la barre de fonction.

Ce semble fonctionner chez moi, je te laisse tester de ton coté.

@ +

mth
 

Pièces jointes

  • EXEMPLE Image.zip
    25.9 KB · Affichages: 588
  • EXEMPLE Image.zip
    25.9 KB · Affichages: 594
  • EXEMPLE Image.zip
    25.9 KB · Affichages: 600
Dernière édition:

mth

XLDnaute Barbatruc
Re : la fonction DECALER et les images

Re :)

Pas d'inquiétude, exactement pareil sur 2007, c'est la version que j'ai à la maison et tout fonctionne de mon coté.

Bonne soirée et @ +

mth

PS: tu peux en profiter pour indiquer ta version excel dans ton profil, c'est une info qui peut-être bien utile :)
 

SPARKLETOF

XLDnaute Junior
Re : la fonction DECALER et les images

Merci beaucoup, cela correspond exactement à ce qu'il me faut.
Au risque de paraitre lourd pourrais tu m'expliquer ta formule car je n'arrive pas à la comprendre ?
=DECALER(LISTE!$A$1;EQUIV(MENU!$C$8;LISTE!$A$1:$A$10;0)-1;4;;)
Un très grand merci.
SKF
 

mth

XLDnaute Barbatruc
Re : la fonction DECALER et les images

Bonjour Sparkletof

Il y a peut-être d'autres façons de faire, mais voici les explications de la formule que j'ai utilisée dans ton fichier :

Fonction Decaler:
Formule théorique: DECALER( Réf; Nombre de lignes; Nombre de colonnes; Hauteur; Largeur)

soit dans notre exemple: DECALER(LISTE!$A$1;EQUIV(MENU!$C$8;LISTE!$A$1:$A$10;0)-1;4;; )

Réf: Cellule de départ à partir de laquelle le décalage doit être opéré.Ici, nous partons de la cellule $A$1 de l'onglet Liste

Nbre de lignes :
Nombre de lignes de décalage vers le haut (chiffre négatif) ou vers le bas (chiffre positif) .
Concrètement ici pour Retourver "Américan Pie 2" nous nous décalons de 2 lignes vers le bas.
pour calculer ce 2, c'est la fonction Equiv() qui est utilisée (voir petit commentaire en dessous)

Nombre de colonnes.
Même raisonnement que pour les lignes, ici nous rentrons le chiffre positif 4 pour nous décaler de 4 colonnes sur la droite afin de nous retrouver en colonne E où se trouvent nos images.

Hauteur: Indique la hauteur de la plage, en nombre de lignes (elle doit être impérativement supérieure à 0)
Dans notre exemple nous aurions pu saisir 1, qui est la valeur par défaut quand on ne saisit rien, (d'où le point virgule sans rien derrière)

Largeur: Indique la largeur de la plage, en nombre de colonnes (la largeur doit également être supérieure à 0).
Même chose que pour la hauteur, ici la hauteur est de 1


Pour la fonction Equiv:
Cette fonction permet de trouver la position de l'élément recherché

Formule théorique : Equiv(valeur_cherchée;matrice de recherche;type)

soit dans notre exemple :EQUIV(MENU!$C$8;LISTE!$A$1:$A$10;0)

Valeur cherchée: Nous cherchons la valeur de la cellule $C$8 de l'onglet Menu (American Pie 2 par exemple)

Matrice de recherche: Nous cherchons cette valeur dans les cellules situées dans la colonne A de l'onglet Liste entre les lignes 1 et 10

Type: Dans notre exemple l'argument est 0 pour dire que nous cherchons la valeur exacte.
Les arguments peuvent être:
1 pour chercher la valeur la plus élevée inférieure ou égale à la valeur cherchée,
-1 pour chercher la plus petite valeur supérieure ou égale à la valeur cherchée,
si l'argument n'est pas renseigné, la valeur par défaut est 1
Dans ces derniers cas, il faut que la matrice soit triée sans quoi le résultat risque d'être faux.

Dans notre exemple, la valeur renvoyée par cette fonction est 3 (partant de A1, American Pie 2 est effectivement sur la ligne 3); et il convient de retirer 1 pour tenir compte de la 1ère ligne qui est vide


Pour conclure sur cette formule (suis un peu bavarde ... ;) je sais ...)
DECALER(LISTE!$A$1;EQUIV(MENU!$C$8;LISTE!$A$1:$A$10;0)-1;4;; ) pour le cas american Pie 2 ; commence par se placer sur l'onglet liste en A1, puis se décale de 2 lignes en dessous, puis de 4 colonnes à droite, prend 1 cellule (largeur=hauteur=1) et se retrouve donc sur l'image de la cellule E3

Voili voilou, j'espère que ce commentaire pourra t'aider, et te dis à bientôt sur le forum :)

mth
 
Dernière édition:

SPARKLETOF

XLDnaute Junior
Re : la fonction DECALER et les images

Bonjour,
je suis toujours avec mon doc.
Le truc, c'est que je voudrais faire des liste en cascades. J'ai essayé différentes choses et finalement j'ai réussi avec l'aide d'un lien trouvé sur ce forum. Le problème c'est que ça marche mais avec des listes créées en "validation de données"... j'utilise des zone de liste modifiables ! J'ai essayé d'adapter mais je n'y arrive pas, notamment à cause de la cellule de référence.
Je vous joins mon fichier pour que vous compreniez mieux.
En attendant votre réponse, bonne journée.
Merci
SKF
 

Pièces jointes

  • EXEMPLE Image.zip
    43.3 KB · Affichages: 194
  • EXEMPLE Image.zip
    43.3 KB · Affichages: 196
  • EXEMPLE Image.zip
    43.3 KB · Affichages: 189

mth

XLDnaute Barbatruc
Re : la fonction DECALER et les images

Bonsoir Sparkeltof,

Désolée de ne pouvoir t'aider, mais je ne sais pas causer aux formulaires :eek:, tu peux peut-être jeter un oeil sur le site très riche de J Boisgontier:

Formation Excel VBA JB

Il y a un onglet dédié aux formulaires, et notamment des exemples de listes en cascades.

Si non, le sujet qui te préoccupe maintenant n'est plus la fonction décaler pour afficher des images, je dis peut-être une bêtise mais pour mieux cibler le sujet peut-être peux-tu ouvrir un autre fil spécialement dédié à cette problématique? je ne doute pas un instant que les pros du vba s'y attarderont pour t'aider.

Bien à toi,

mth
 

Plopy

XLDnaute Nouveau
Re : la fonction DECALER et les images

Bonjour à tous...

Fraîchement inscrite sur votre forum pour tenter de comprendre la fonction DECALER... Qui me semble pourtant très simple (pour ce que je veux en faire)

Bizarrement, j'arrive à l'utiliser lorsque mes images sont sur la même ligne ... mais pas quand je les insère sur la même colonne.

Dans mon exemple, je souhaiterai simplement que lorsque je tape 1 dans la celle C2, le soleil apparaît en B2. 2 = nuageux; 3= pluie... C'est tout bête!!!
Mais j'ai retourné la formule dans tous les sens, pas moyen. J'ai soit une plage de données qui apparaît avec un mélange de deux images soit rien du tout!

Je n'ai pas mis de formule dans la définition du nom...

Merci d'avance pour votre aide précieuse...

Marilyne
 

Pièces jointes

  • Test_decaler.xls
    19 KB · Affichages: 212
  • Test_decaler.xls
    19 KB · Affichages: 217
  • Test_decaler.xls
    19 KB · Affichages: 215

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : la fonction DECALER et les images

Bonjour,

=DECALER(Feuil1!$B$4;Feuil1!$C$2-1;)

JB
 

Pièces jointes

  • Copie de Test_decaler.xls
    26 KB · Affichages: 353
  • Copie de Test_decaler.xls
    26 KB · Affichages: 365
  • Copie de Test_decaler.xls
    26 KB · Affichages: 376

Hulk

XLDnaute Barbatruc
Re : la fonction DECALER et les images

Hello le fil,

En vitesse, je dépose une autre version en m'inspirant des codes de l'imminent Boisgontier.

L'avantage, c'est que le fichier .xls lui n'est pas "grossi".

Le fichier étant lourd because les images qu'il contient télécharges-le ici.

Cdt, Hulk.
 

Discussions similaires

Statistiques des forums

Discussions
312 184
Messages
2 086 007
Membres
103 088
dernier inscrit
Psodam