begin process at 2012 02 15 00:30:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

Fonction VBA


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

Fonction VBA

jeudi 28 février 2008 à 02:08:17 | Fonction VBA

marly

 Bonjour,
je souhaiterais faire une fonction qui récupère en entrée le nom d'un onglet existant et qui renomme cet onglet avec un nouveau nom (également passé en paramètres). Voici le code de ma fonction :

Function ChangerNom(AncienNom As String, NouveauNom As String) As String
    Sheets(AncienNom).Name = NouveauNom
    ChangerNom = NouveauNom
End Function


Je ne comprends pas pourquoi ca ne marche pas, pouvez vous m'aider?
Merci.
jeudi 28 février 2008 à 05:42:19 | Re : Fonction VBA

rbidocho

Bonjour marly,

ça marche très bien chez moi avec

Function ChangerNom(AncienNom As String, NouveauNom As String) As String
    Sheets(AncienNom).Name = NouveauNom
    ChangerNom = NouveauNom
End Function

Sub test()
    xxx = ChangerNom("Feuil1", "ccc")
End Sub


la feuille nommée "Feuil1" est bien renomée en "ccc" et xxx contient aussi "ccc"

RB
jeudi 28 février 2008 à 08:59:21 | Re : Fonction VBA

jrivet

Membre Club
Salut,
(ca marche aussi nickel chez moi)

"pouvez vous m'aider"
Oui on peut t'aider mais il faut savoir que  "ca ne marche pas,"  ne nous aide pas du tout.

Est ce que tu as une erreur, ou bien aucun resultat mais pas d'erreur?


@+: Ju£i€n
Pensez: Réponse acceptée
jeudi 28 février 2008 à 15:21:06 | Re : Fonction VBA

marly

Oui ca marche comme ca effectivement mais j'aimerais lancer le renommage d'onglet en passant directement les paramètres (AncienNom et NouveauNom) à la macro (Est ce possible???) ou a la fonction que je lancerais depuis nimportequelle cellule. 

Car comme c'est codé plus haut, cela oblige a coder en dur soit les noms d'onglet a renommer, soit l'emplacement des 2 cellules dans lesquelles on va inscrire les 2 noms.
vendredi 29 février 2008 à 10:08:39 | Re : Fonction VBA

yvan777

Salut,
Au niveau de ta feuille faire un Worksheet_Change tel que :

Private Sub Worksheet_Change(ByVal Target As Range)
          Dim AncienNom As String
          Dim NouveauNom As String
          AncienNom = Range("$B$2").Value
          If Target.Address = "$C$2" Then
                    NouveauNom = Target.Value
                    Sheets(AncienNom).Name = NouveauNom
          End If
End Sub

Dans un module creer la fonction NomFeuille

Function NomFeuille()
          Application.Volatile
          NomFeuille = Application.Caller.Parent.Name
End Function

Dans mon exemple la cellule B2 comporte la formule suivante          =NomFeuille()
Dans la cellule C2 tu entres ton nouveau nom et voila.


Cette discussion est classée dans : vba, fonction, string, onglet, changernom


Répondre à ce message

Sujets en rapport avec ce message

Retour de Fonction ? (comme en php/Js avec Return) [ par Baldurien ] Je cherche l'équivalent de ceci en php:function red( $string ){ $string = "$string"; return $string;}maintenant, si je veux me servir de ma f Utiliser la fonction MOYENNE sous VBA [ par Louis ] Lorsque j'écris Cells(11,3).SelectActiveCellFormula= "=AVERAGE(R[-4]C:R[-1]C])"j'obtiens bien le résultat que je veux à savoir la moyenne MOYENNE(C7:C Procédure VBA pr importer données de Excel vers Access [ par Christelle ] Bonjour...Je vais essayer d'etre clair:J'ai ss access 1 frm de saisie de date.Ensuite, j'ai un bouton de cde 'mise a jour du programme'. et je dois éc Procédure VBA pr importer données de Excel vers Access [ par Christelle ] Bonjour...Je vais essayer d'etre clair:J'ai ss access 1 frm de saisie de date.Ensuite, j'ai un bouton de cde 'mise a jour du programme'. et je dois éc Fonction qui renvoit un pointeur... [ par Nosk ] SalutJ'ai un probleme en VB : J'ai une fonction qui devrait normallement renvoyer une string. Malheureusement, cette fonction renvoit une variable de Afficher le resultat d'une requete vba dans un etat [ par tarkhun63 ] Lu, bon je sais ce que vous vous dites c koi cette pauv question a lui c tout con a faire BAs oui je sais mais chez moi ca bugJ'ai un formulaire qui p Votre avis de développeur : Passer beaucoup de paramètres à une fonction VB... [ par jockos ] Selon vous, quel est l'inconvénient de passer 15 paramètres de type String (en ByRef) a une fonction ?Chaque String fait au maximum 30 caractères. De passage de parametre VBA ?!! [ par yaya31 ] Bonjour,J appelle une fonction et je veux lui donner 2 parametres. et ça lui plait pas. Si je lui passe un parametre il plante pas mais 2 ...Ma foncti Fonction PING dans VBA [ par chicodoubrazil ] J'aimerais savoir comment réaliser ou lancer un ping (à partir d'une liste d'adresses IP inscrites dans un fichier txt) en lançant une macro excel.Je Aide please se connecter à un lecteur réseau [ par sef6 ] Alor voici mon problème ...G plusieur pc en réso sur windows 2000.J'aimerai faier des updates sur ces pc depuis un ordi du réseau ( envoi de files sur


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 0,905 sec (4)

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