La cellule E12 contient la liste :
Autriche
Belgique
France
J'ai aussi trois macros nommées :
AAutriche
ABelgique
AFrance
Je tente alors d'appeler une de ces macros
de la façon suivante :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$E$12" Then
nom = "A" & Target
Call nom
End If
End Sub
mais ça ne fonctionne pas :-(
Comment contourner cet affreux dilemme ?
Merci pour le Application.Rhum :-) Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Module standard : Public nom$ Sub Affiche() ActiveSheet.Shapes(nom).ZOrder msoBringToFront End Sub
Module de feuille : Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$E$12" Then nom = Target Affiche End If End Sub
Commence à aimer ça, moé, le VBA :-)))
Serge
"Daniel.M" a écrit dans le message de news: #2I7df#
Salut Sergio,
Il te faut trouver une méthode qui prend une string et comprend qu'on appelle la
procédure correspondante. Cette méthode existe (Application.Run).
Private Sub Worksheet_Change(ByVal Target As Range) Dim nom$ If Target.Address = "$E$12" Then nom = "A" & Target Application.Run nom End If End Sub
Salutations,
Daniel M.
Allez loup yâ !
Merci pour le Application.Rhum :-)
Mais ai trouvé quelque chose de plus simple
qui rend superfétatoire le Select Case et
Application.Run (elle servira une autre fois).
J'ai des cartes emplilées de mêmes dimensions
nommées : Autriche, Belgique, Espagne, France ...
et j'ai la liste (Validation) des noms en E12 :
Module standard :
Public nom$
Sub Affiche()
ActiveSheet.Shapes(nom).ZOrder msoBringToFront
End Sub
Module de feuille :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$E$12" Then
nom = Target
Affiche
End If
End Sub
Commence à aimer ça, moé, le VBA :-)))
Serge
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans le message de
news: #2I7df#7DHA.2576@TK2MSFTNGP11.phx.gbl...
Salut Sergio,
Il te faut trouver une méthode qui prend une string et comprend qu'on
appelle la
procédure correspondante. Cette méthode existe (Application.Run).
Private Sub Worksheet_Change(ByVal Target As Range)
Dim nom$
If Target.Address = "$E$12" Then
nom = "A" & Target
Application.Run nom
End If
End Sub
Merci pour le Application.Rhum :-) Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Module standard : Public nom$ Sub Affiche() ActiveSheet.Shapes(nom).ZOrder msoBringToFront End Sub
Module de feuille : Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$E$12" Then nom = Target Affiche End If End Sub
Commence à aimer ça, moé, le VBA :-)))
Serge
"Daniel.M" a écrit dans le message de news: #2I7df#
Salut Sergio,
Il te faut trouver une méthode qui prend une string et comprend qu'on appelle la
procédure correspondante. Cette méthode existe (Application.Run).
Private Sub Worksheet_Change(ByVal Target As Range) Dim nom$ If Target.Address = "$E$12" Then nom = "A" & Target Application.Run nom End If End Sub
Salutations,
Daniel M.
Daniel.M
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et choisir d'y insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton classeur, MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile à gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom dans la liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa visibilité etc.
C'était juste une suggestion.
Salutations,
Daniel M.
Serge,
Mais ai trouvé quelque chose de plus simple
qui rend superfétatoire le Select Case et
Application.Run (elle servira une autre fois).
J'ai des cartes emplilées de mêmes dimensions
nommées : Autriche, Belgique, Espagne, France ...
et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa visibilité
etc.
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et choisir d'y insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton classeur, MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile à gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom dans la liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa visibilité etc.
C'était juste une suggestion.
Salutations,
Daniel M.
garnote
Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
Quelque chose du genre ?
Sub InsèreCarte()
'nom = "Autriche"
[a1].Select
ActiveSheet.Pictures.Insert("D:Mes documents
Mes imagesAutriche.bmp")
Range("E1").Select
End Sub
Mais alors, comment mettre «nom» dans le chemin
de mes images ?
Serge
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans le message de
news: #wfP38#7DHA.2832@tk2msftngp13.phx.gbl...
Serge,
Mais ai trouvé quelque chose de plus simple
qui rend superfétatoire le Select Case et
Application.Run (elle servira une autre fois).
J'ai des cartes emplilées de mêmes dimensions
nommées : Autriche, Belgique, Espagne, France ...
et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa
visibilité
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
garnote
Avoir trouvé :
Sub InsèreCarte() nom = "France" [a1].Select ActiveSheet.Pictures.Insert ("D:Mes documentsMes images" & nom & ".bmp") [e1].Select End Sub
Serge
"garnote" a écrit dans le message de news: Xf8Wb.30610$
Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
Avoir trouvé :
Sub InsèreCarte()
nom = "France"
[a1].Select
ActiveSheet.Pictures.Insert ("D:Mes documentsMes images" & nom &
".bmp")
[e1].Select
End Sub
Serge
"garnote" <rien@absent.net> a écrit dans le message de news:
Xf8Wb.30610$2g.25278@charlie.risq.qc.ca...
Quelque chose du genre ?
Sub InsèreCarte()
'nom = "Autriche"
[a1].Select
ActiveSheet.Pictures.Insert("D:Mes documents
Mes imagesAutriche.bmp")
Range("E1").Select
End Sub
Mais alors, comment mettre «nom» dans le chemin
de mes images ?
Serge
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans le message de
news: #wfP38#7DHA.2832@tk2msftngp13.phx.gbl...
Serge,
Mais ai trouvé quelque chose de plus simple
qui rend superfétatoire le Select Case et
Application.Run (elle servira une autre fois).
J'ai des cartes emplilées de mêmes dimensions
nommées : Autriche, Belgique, Espagne, France ...
et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus
facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa
visibilité
Sub InsèreCarte() nom = "France" [a1].Select ActiveSheet.Pictures.Insert ("D:Mes documentsMes images" & nom & ".bmp") [e1].Select End Sub
Serge
"garnote" a écrit dans le message de news: Xf8Wb.30610$
Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
Modeste
;-))) Tsss...tssss Serge !!! Quelque chose du genre ?
-----Message d'origine----- Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de
news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa
visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
.
;-)))
Tsss...tssss
Serge !!!
Quelque chose du genre ?
-----Message d'origine-----
Quelque chose du genre ?
Sub InsèreCarte()
'nom = "Autriche"
[a1].Select
ActiveSheet.Pictures.Insert("D:Mes documents
Mes imagesAutriche.bmp")
Range("E1").Select
End Sub
Mais alors, comment mettre «nom» dans le chemin
de mes images ?
Serge
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans
le message de
news: #wfP38#7DHA.2832@tk2msftngp13.phx.gbl...
Serge,
Mais ai trouvé quelque chose de plus simple
qui rend superfétatoire le Select Case et
Application.Run (elle servira une autre fois).
J'ai des cartes emplilées de mêmes dimensions
nommées : Autriche, Belgique, Espagne, France ...
et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une
seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la
valeur E12.
Les fichiers images seraient alors dans le même
répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la
fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me
semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et
rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à
s'assurer de sa
-----Message d'origine----- Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de
news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa
visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
.
garnote
La suite, c'est d'annihiler l'image présente avant d'installer la nouvelle ! Le rhum, c'est pour beaucoup plus tard :-)
Serge
"Modeste" a écrit dans le message de news: e27001c3effd$71a1f670$ ;-))) Tsss...tssss Serge !!! Quelque chose du genre ?
-----Message d'origine----- Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de
news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa
visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
.
La suite, c'est d'annihiler l'image présente
avant d'installer la nouvelle !
Le rhum, c'est pour beaucoup plus tard :-)
Serge
"Modeste" <gee-dee-@discussions.microsoft.com> a écrit dans le message de
news: e27001c3effd$71a1f670$a501280a@phx.gbl...
;-)))
Tsss...tssss
Serge !!!
Quelque chose du genre ?
-----Message d'origine-----
Quelque chose du genre ?
Sub InsèreCarte()
'nom = "Autriche"
[a1].Select
ActiveSheet.Pictures.Insert("D:Mes documents
Mes imagesAutriche.bmp")
Range("E1").Select
End Sub
Mais alors, comment mettre «nom» dans le chemin
de mes images ?
Serge
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans
le message de
news: #wfP38#7DHA.2832@tk2msftngp13.phx.gbl...
Serge,
Mais ai trouvé quelque chose de plus simple
qui rend superfétatoire le Select Case et
Application.Run (elle servira une autre fois).
J'ai des cartes emplilées de mêmes dimensions
nommées : Autriche, Belgique, Espagne, France ...
et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une
seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la
valeur E12.
Les fichiers images seraient alors dans le même
répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la
fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me
semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et
rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à
s'assurer de sa
-----Message d'origine----- Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de
news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa
visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
.
Daniel.M
Sergio,
Il vaut mieux changer la RÉFÉRENCE à l'image plutôt que d'insérer et détruire l'ancienne. La macro EssaiChgImage fait varier l'image de Rectangle 1 (c'est une Shape) selon le contenu de A1. L'intérêt de l'avoir dans une shape est de contrôler ses dimensions (hauteur, largeur) peu importe celles de l'image.
Sub chgImage(NomImage As String) With ActiveSheet.Shapes("Rectangle 1") .Fill.UserPicture ="D:Mes documentsMes images" & NomImage & ".bmp" End With End Sub
Sub essaiChgImage() chgImage Range("A1") End Sub
Tu pourras adapter facilement pour inclure dans une macro événementielle. Ensuite, tu pourrais aussi mettre la liste des pays dans une plage (LesPays) et, en A1 (ou ailleurs) mettre Données/Validation Liste =LesPays.
Maintenant! Le rhum.
Salutations,
Daniel M.
"garnote" wrote in message news:cW8Wb.30615$
La suite, c'est d'annihiler l'image présente avant d'installer la nouvelle ! Le rhum, c'est pour beaucoup plus tard :-)
Serge
"Modeste" a écrit dans le message de news: e27001c3effd$71a1f670$ ;-))) Tsss...tssss Serge !!! Quelque chose du genre ?
-----Message d'origine----- Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de
news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa
visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
.
Sergio,
Il vaut mieux changer la RÉFÉRENCE à l'image plutôt que d'insérer et détruire
l'ancienne.
La macro EssaiChgImage fait varier l'image de Rectangle 1 (c'est une Shape)
selon le contenu de A1. L'intérêt de l'avoir dans une shape est de contrôler ses
dimensions (hauteur, largeur) peu importe celles de l'image.
Sub chgImage(NomImage As String)
With ActiveSheet.Shapes("Rectangle 1")
.Fill.UserPicture ="D:Mes documentsMes images" & NomImage & ".bmp"
End With
End Sub
Sub essaiChgImage()
chgImage Range("A1")
End Sub
Tu pourras adapter facilement pour inclure dans une macro événementielle.
Ensuite, tu pourrais aussi mettre la liste des pays dans une plage (LesPays) et,
en A1 (ou ailleurs) mettre Données/Validation Liste =LesPays.
Maintenant! Le rhum.
Salutations,
Daniel M.
"garnote" <rien@absent.net> wrote in message
news:cW8Wb.30615$2g.17740@charlie.risq.qc.ca...
La suite, c'est d'annihiler l'image présente
avant d'installer la nouvelle !
Le rhum, c'est pour beaucoup plus tard :-)
Serge
"Modeste" <gee-dee-@discussions.microsoft.com> a écrit dans le message de
news: e27001c3effd$71a1f670$a501280a@phx.gbl...
;-)))
Tsss...tssss
Serge !!!
Quelque chose du genre ?
-----Message d'origine-----
Quelque chose du genre ?
Sub InsèreCarte()
'nom = "Autriche"
[a1].Select
ActiveSheet.Pictures.Insert("D:Mes documents
Mes imagesAutriche.bmp")
Range("E1").Select
End Sub
Mais alors, comment mettre «nom» dans le chemin
de mes images ?
Serge
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans
le message de
news: #wfP38#7DHA.2832@tk2msftngp13.phx.gbl...
Serge,
Mais ai trouvé quelque chose de plus simple
qui rend superfétatoire le Select Case et
Application.Run (elle servira une autre fois).
J'ai des cartes emplilées de mêmes dimensions
nommées : Autriche, Belgique, Espagne, France ...
et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une
seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la
valeur E12.
Les fichiers images seraient alors dans le même
répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la
fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me
semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et
rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à
s'assurer de sa
Il vaut mieux changer la RÉFÉRENCE à l'image plutôt que d'insérer et détruire l'ancienne. La macro EssaiChgImage fait varier l'image de Rectangle 1 (c'est une Shape) selon le contenu de A1. L'intérêt de l'avoir dans une shape est de contrôler ses dimensions (hauteur, largeur) peu importe celles de l'image.
Sub chgImage(NomImage As String) With ActiveSheet.Shapes("Rectangle 1") .Fill.UserPicture ="D:Mes documentsMes images" & NomImage & ".bmp" End With End Sub
Sub essaiChgImage() chgImage Range("A1") End Sub
Tu pourras adapter facilement pour inclure dans une macro événementielle. Ensuite, tu pourrais aussi mettre la liste des pays dans une plage (LesPays) et, en A1 (ou ailleurs) mettre Données/Validation Liste =LesPays.
Maintenant! Le rhum.
Salutations,
Daniel M.
"garnote" wrote in message news:cW8Wb.30615$
La suite, c'est d'annihiler l'image présente avant d'installer la nouvelle ! Le rhum, c'est pour beaucoup plus tard :-)
Serge
"Modeste" a écrit dans le message de news: e27001c3effd$71a1f670$ ;-))) Tsss...tssss Serge !!! Quelque chose du genre ?
-----Message d'origine----- Quelque chose du genre ?
Sub InsèreCarte() 'nom = "Autriche" [a1].Select ActiveSheet.Pictures.Insert("D:Mes documents Mes imagesAutriche.bmp") Range("E1").Select End Sub
Mais alors, comment mettre «nom» dans le chemin de mes images ?
Serge
"Daniel.M" a écrit dans le message de
news: #wfP38#
Serge,
Mais ai trouvé quelque chose de plus simple qui rend superfétatoire le Select Case et Application.Run (elle servira une autre fois). J'ai des cartes emplilées de mêmes dimensions nommées : Autriche, Belgique, Espagne, France ... et j'ai la liste (Validation) des noms en E12 :
Juste une autre idée comme ça, tu pourrais avoir une seule carte et
choisir d'y
insérer l'image de tel ou tel pays dépendant de la valeur E12.
Les fichiers images seraient alors dans le même répertoire que ton
classeur,
MAIS PAS DANS ton classeur (ou plutôt une seule à la fois).
Dans le cas où tu as beaucoup de pays (N > 30), cela me semble plus facile
à
gérer.
Pour rajouter un pays: avoir l'image dans un fichier et rajouter le nom
dans la
liste de validation (E12). Pas de cadre à rajouter à s'assurer de sa
visibilité
etc.
C'était juste une suggestion.
Salutations,
Daniel M.
.
Daniel.M
Oups,
Dans la sub chgImage(), il y eu erreur en changeant le répertoire pour simuler le tien
Le bon code:
Sub chgImage(Nom As String) ActiveSheet.Shapes("Rectangle 1").Fill.UserPicture _ "D:Mes documentsMes images" & Nom & ".bmp" End Sub
Daniel M.
Oups,
Dans la sub chgImage(), il y eu erreur en changeant le répertoire pour simuler
le tien
Le bon code:
Sub chgImage(Nom As String)
ActiveSheet.Shapes("Rectangle 1").Fill.UserPicture _
"D:Mes documentsMes images" & Nom & ".bmp"
End Sub