begin process at 2012 02 15 22:21:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

Fonction indirect VBA Excel feuille nom variable


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Fonction indirect VBA Excel feuille nom variable

lundi 15 septembre 2008 à 13:15:37 | Fonction indirect VBA Excel feuille nom variable

cazimiro

Bonjour à tous,

Voici quelque temps que je me casse les dents sur la fonction indirect:

J'ai un code VBA qui permet de générer des feuilles avec un nom variable.

Dim nom_Feuille As String
nom_Feuille = New_Enfant.TextBox1.Text & "_" & New_Enfant.TextBox2.Text

Jusqu'ici tout va bien, la feuille est bien généré avec ce nom issu de Userform remplit par l'utilisateur.

Là ou ca se complique, c'est que j'ai une feuille nomméé "liste" que je souhaite remplir à partir des donnée de ces feuilles avec le nom variable.

Petit schéma de fonctionnement

1- Le code génère la feuille "nom_Feuille" et la remplit avec des données
2- Le code doit remplir une feuille existante nommée "liste" avec les données de "nom_Feuille" (Nom variable)

Après avoir un peu fouiller sur mon meilleur ami google, je pense que pour faire l'étape 2, il faut que j'utilise la fonction Indirect
J'ai donc ajouter le nom de la feuille dans une cellule de la feuille "liste" et une variable numero_ligne pour récupérer le nom de la feuille.
Colonne AA et Ligne (Numero_Ligne)

j'essaie avec ce code:

ActiveCell.FormulaR1C1 = INDIRECT("AA" & Numero_Ligne & "!" & "D2")

J' obtient une réponse: Fonction inconnu ou end sub....


Vous avez une idée?
lundi 15 septembre 2008 à 14:20:16 | Re : Fonction indirect VBA Excel feuille nom variable

Molenn

Tu t'embêtes avec la fonction indirect, surtout si ton but est de travailler par du code VBA.
Tu as le nom de feuille variable, que ça soit dans une variable ou dans une cellule de ta feuille 'Liste', tu peux l'appeler avec l'objet Worksheet qui désigne les feuilles dans EXCEL.

Par ex, pour récupérer les données de la cellule A1 pour les mettre en C1 de ta feuille Liste, en utilisant une variable :
Worksheets("Liste").range("C1").value = Worksheets(nom_Feuille).range("A1").value

Si le nom de la feuille est contenue dans la cellule B1 de ta feuille 'Liste' :
Worksheets("Liste").range("C1").value = Worksheets(Worksheets("Liste").range("B1").value).range("A1").value

ou Si tu veux tenir compte de ta colonne AA et une ligne variable :
Worksheets("Liste").range("C1").value = Worksheets(Worksheets("Liste").range("AA" & Numero_Ligne).value).range("A1").value

Molenn

lundi 15 septembre 2008 à 15:30:30 | Re : Fonction indirect VBA Excel feuille nom variable

cazimiro

Merci pour votre réponse. Oui c'est exact je récupéré bien la valeur de la feuille.
Par contre si l'on modifie la valeur de la case D2 dans  nomFeuille, celle-ci n'est pas réaffecté dans la feuille "liste". C'est là tout mon problème.

En claire dans la feuille liste ce n'est pas une valeur qu'il me faut m'est une valeur relative.... Encore des idées?
lundi 15 septembre 2008 à 15:44:51 | Re : Fonction indirect VBA Excel feuille nom variable

cazimiro

Désolé pour le double post, fausse manipulation je pense ;)
lundi 15 septembre 2008 à 16:04:29 | Re : Fonction indirect VBA Excel feuille nom variable

cazimiro

Réponse acceptée !
Bon j'ai trouvé la réponse :

il faut remplacer FormulaR1C1 par Formula (ça fera disparaitre les apostrophes)

La fonction INDIRECT interprète un texte comme une référence de plage de cellules. Elle n'est pas indispensable ici, on pourrait trés bien mettre

ActiveCell.Formula = "='" & Nom_Feuil & "'!D2"


Cette discussion est classée dans : fonction, code, variable, feuille, indirect


Répondre à ce message

Sujets en rapport avec ce message

Fonction indirect VBA Excel feuille nom variable [ par cazimiro ] Bonjour à tous,Voici quelque temps que je me casse les dents sur la fonction indirect:J'ai un code VBA qui permet de générer des feuilles avec un nom [Catégorie modifiée VB -> C++] code cosinus [ par mimou121084 ] bonjour je suis débutante en c++ il faut que je crée un programme en c++ d'une fonction cosinus en fontion d'un variable aléatoire càd un code c++ pou [Catégorie modifiée VB6 -> VBA] Adresser l'élement d'un type par une variable [ par florentnostradamus ] Bonjour à tous, Je cherche à adresser dans une fonction l'élément d'un type défini par ailleurs par une variable qui est un argument de cette fonctio fonction "range" [ par Roussetj ] bonjour,dans mon code, jé déduis la valeur d'une variable Ligne et la valeur d'une variable Colonne.ces 2 valeurs sont des entiers.je veux ensuite cop Variable pour plusieurs feuilles [ par Brodeur ] Bonjour, je voudrais savoir comment faire pour qu'une variable definie dans une feuille soit utilise par une autre feuille (ce serai comme si on faisa Macro Excel : Modifier un graphe en fonction d'une cellule [ par sabrina75 ] Bonsoir tout le monde,Voici mon pb : Sur une feuille 1 j'ai 24 noms de ville avec un nb associé à chacune, j'ai une macro qui les classe par ordre cr Récupérer la valeur que me réenvoi ma fonction [ par JSilvere ] Bonjours, je débute en programmation, et je déclare une fonction qui me réenvoi un long, mais je n'arrive pas à récupérer ce long pour pouvoir l'explo VB et les execption [ par abdobergach ] bonjour j'ai créé une fonction CBstatus() en VB.net et un timer qui fais l'appel à cette fonction chaque 10 ms cette fonction permet de recupérer des Copie d'un nombre de feuille variable [ par Cire37 ] Bonjour le forum, Je cherche à reproduire l'instruction : ThisWorkbook.Sheets(Array("Page 1", "Page 2")).Copy mais avec le nombre de pages pouvant v Variable Textbox dans un shell [ par WarTun ] Bonjour, je souhaiterais créer un projet qui me servirais à éteindre des ordinateurs à distance, j'inclue donc la commande [code=vbs]Shell("shutdown


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,231 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales