Est-il possible de faire le Dim d'une variable en fonction du résultat d'un test :
if condition = vraie then dim maVar as string else dim maVar as integer ?
Test fait et non concluant bien sÍ»r ! Avant de me lancer dans un truc compliqué comme ré-écrire le code Í la volée suivant le test, je préfère poser la question !
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichD
Le 18/02/21 Í 08:12, ThierryP a écrit :
Bonjour le forum, Est-il possible de faire le Dim d'une variable en fonction du résultat d'un test : if condition = vraie then dim maVar as string else dim maVar as integer ? Test fait et non concluant bien sÍ»r ! Avant de me lancer dans un truc compliqué comme ré-écrire le code Í la volée suivant le test, je préfère poser la question ! Mais rien n'est impossible aux gourous !!! Merci d'avance pour toute piste, ThierryP
Bonjour, Tu n'as qu'Í déclarer cette variable as "Variant". Cette variable peut contenir du texte, numérique, voire un tableau de données. Tu peux modifier son contenu aussi souvent que tu veux, et ce dans la même procédure. Dim MaVar As Variant N.B. Lorsque l'on déclare une variable sans attribuer un type comme : Dim MaVar Par défaut, la variable a le type "Variant". Cependant, lorsque l'on peut, c'est toujours mieux d'attribuer le type au moment de la déclaration de la procédure. MichD
Le 18/02/21 Í 08:12, ThierryP a écrit :
Bonjour le forum,
Est-il possible de faire le Dim d'une variable en fonction du résultat d'un test :
if condition = vraie then dim maVar as string else dim maVar as integer ?
Test fait et non concluant bien sÍ»r ! Avant de me lancer dans un truc compliqué comme ré-écrire le code Í la volée suivant le test, je préfère poser la question !
Mais rien n'est impossible aux gourous !!!
Merci d'avance pour toute piste,
ThierryP
Bonjour,
Tu n'as qu'Í déclarer cette variable as "Variant". Cette variable peut
contenir du texte, numérique, voire un tableau de données. Tu peux
modifier son contenu aussi souvent que tu veux, et ce dans la même
procédure.
Dim MaVar As Variant
N.B. Lorsque l'on déclare une variable sans attribuer un type comme :
Dim MaVar
Par défaut, la variable a le type "Variant". Cependant, lorsque l'on
peut, c'est toujours mieux d'attribuer le type au moment de la
déclaration de la procédure.
Bonjour le forum, Est-il possible de faire le Dim d'une variable en fonction du résultat d'un test : if condition = vraie then dim maVar as string else dim maVar as integer ? Test fait et non concluant bien sÍ»r ! Avant de me lancer dans un truc compliqué comme ré-écrire le code Í la volée suivant le test, je préfère poser la question ! Mais rien n'est impossible aux gourous !!! Merci d'avance pour toute piste, ThierryP
Bonjour, Tu n'as qu'Í déclarer cette variable as "Variant". Cette variable peut contenir du texte, numérique, voire un tableau de données. Tu peux modifier son contenu aussi souvent que tu veux, et ce dans la même procédure. Dim MaVar As Variant N.B. Lorsque l'on déclare une variable sans attribuer un type comme : Dim MaVar Par défaut, la variable a le type "Variant". Cependant, lorsque l'on peut, c'est toujours mieux d'attribuer le type au moment de la déclaration de la procédure. MichD
ThierryP
Bonjour Denis, Pourquoi je ne suis pas surpris que tu me répondes ?? !!! En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté ! Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi ! Merci pour la réactivité ! ThierryP
Bonjour Denis,
Pourquoi je ne suis pas surpris que tu me répondes ?? !!!
En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté !
Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi !
Bonjour Denis, Pourquoi je ne suis pas surpris que tu me répondes ?? !!! En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté ! Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi ! Merci pour la réactivité ! ThierryP
MichD
Le 18/02/21 Í 09:05, ThierryP a écrit :
Bonjour Denis, Pourquoi je ne suis pas surpris que tu me répondes ?? !!! En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté ! Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi ! Merci pour la réactivité ! ThierryP
Si tu travailles avec des "Objets", tu peux déclarer la variable comme ceci : Dim Olk As Object Set Olk = CreateObject("Outlook.Application") Si tu as ajouté la référence "Outlook Microsoft Object 16.0", tu peux faire comme ceci : Dim Old As Outlook.application Set Olk = CreateObject("Outlook.Application") Et l'avantage de cette dernière approche, dès que tu tapes un point(.) après Olk, tu vas avoir une liste déroulante des propriétés et méthodes associées Í cet objet. MichD
Le 18/02/21 Í 09:05, ThierryP a écrit :
Bonjour Denis,
Pourquoi je ne suis pas surpris que tu me répondes ?? !!!
En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté !
Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi !
Merci pour la réactivité !
ThierryP
Si tu travailles avec des "Objets", tu peux déclarer la variable comme
ceci :
Dim Olk As Object
Set Olk = CreateObject("Outlook.Application")
Si tu as ajouté la référence "Outlook Microsoft Object 16.0", tu peux
faire comme ceci :
Dim Old As Outlook.application
Set Olk = CreateObject("Outlook.Application")
Et l'avantage de cette dernière approche, dès que tu tapes un point(.)
après Olk, tu vas avoir une liste déroulante des propriétés et méthodes
associées Í cet objet.
Bonjour Denis, Pourquoi je ne suis pas surpris que tu me répondes ?? !!! En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté ! Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi ! Merci pour la réactivité ! ThierryP
Si tu travailles avec des "Objets", tu peux déclarer la variable comme ceci : Dim Olk As Object Set Olk = CreateObject("Outlook.Application") Si tu as ajouté la référence "Outlook Microsoft Object 16.0", tu peux faire comme ceci : Dim Old As Outlook.application Set Olk = CreateObject("Outlook.Application") Et l'avantage de cette dernière approche, dès que tu tapes un point(.) après Olk, tu vas avoir une liste déroulante des propriétés et méthodes associées Í cet objet. MichD
ThierryP
Le jeudi 18 février 2021 Í 16:11:43 UTC+1, MichD a écrit :
Le 18/02/21 Í 09:05, ThierryP a écrit :
Bonjour Denis, Pourquoi je ne suis pas surpris que tu me répondes ?? !!! En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté ! Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi ! Merci pour la réactivité ! ThierryP
Si tu travailles avec des "Objets", tu peux déclarer la variable comme ceci : Dim Olk As Object Set Olk = CreateObject("Outlook.Application") Si tu as ajouté la référence "Outlook Microsoft Object 16.0", tu peux faire comme ceci : Dim Old As Outlook.application Set Olk = CreateObject("Outlook.Application") Et l'avantage de cette dernière approche, dès que tu tapes un point(.) après Olk, tu vas avoir une liste déroulante des propriétés et méthodes associées Í cet objet. MichD
Bonsoir Denis, Merci pour l'idée !!! Je vais pouvoir creuser un peu ! ThierryP
Le jeudi 18 février 2021 Í 16:11:43 UTC+1, MichD a écrit :
Le 18/02/21 Í 09:05, ThierryP a écrit :
> Bonjour Denis,
>
> Pourquoi je ne suis pas surpris que tu me répondes ?? !!!
> En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté !
>
> Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi !
>
> Merci pour la réactivité !
>
> ThierryP
>
Si tu travailles avec des "Objets", tu peux déclarer la variable comme
ceci :
Dim Olk As Object
Set Olk = CreateObject("Outlook.Application")
Si tu as ajouté la référence "Outlook Microsoft Object 16.0", tu peux
faire comme ceci :
Dim Old As Outlook.application
Set Olk = CreateObject("Outlook.Application")
Et l'avantage de cette dernière approche, dès que tu tapes un point(.)
après Olk, tu vas avoir une liste déroulante des propriétés et méthodes
associées Í cet objet.
MichD
Bonsoir Denis,
Merci pour l'idée !!! Je vais pouvoir creuser un peu !
Le jeudi 18 février 2021 Í 16:11:43 UTC+1, MichD a écrit :
Le 18/02/21 Í 09:05, ThierryP a écrit :
Bonjour Denis, Pourquoi je ne suis pas surpris que tu me répondes ?? !!! En fait, je n'ai pas été assez précis, mais ma demande porte sur des objets Outlook et le VBA d'Outlook n'est pas très documenté ! Mais tu as 100% raison, le Variant me va bien et apparemment Outlook est content aussi ! Merci pour la réactivité ! ThierryP
Si tu travailles avec des "Objets", tu peux déclarer la variable comme ceci : Dim Olk As Object Set Olk = CreateObject("Outlook.Application") Si tu as ajouté la référence "Outlook Microsoft Object 16.0", tu peux faire comme ceci : Dim Old As Outlook.application Set Olk = CreateObject("Outlook.Application") Et l'avantage de cette dernière approche, dès que tu tapes un point(.) après Olk, tu vas avoir une liste déroulante des propriétés et méthodes associées Í cet objet. MichD
Bonsoir Denis, Merci pour l'idée !!! Je vais pouvoir creuser un peu ! ThierryP