IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

insertion dynamique de code


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 88
    Points : 46
    Points
    46
    Par défaut insertion dynamique de code
    Bonjour,

    J'ai une macro qui fait, entre autres, les actions suivantes:
    - insérer un bouton dans une feuille
    - y attribuer le code relatif à l'évènement click

    J'ai donc fait comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    Set oOLE = WSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False, DisplayAsIcon:=False, Left:=1629, Top:=-10, Width:=30, Height:=26)
    oOLE.Name = "OFButton"
    ActiveSheet.OLEObjects(1).Object.Caption = "OF"
     
     
    Code = "Sub OFButton_Click()" & vbCrLf
    Code = Code & "Dim nbr_lignes As Long" & vbCrLf
    Code = Code & "Dim valeur As String" & vbCrLf
    Code = Code & "Dim adresse As String" & vbCrLf
    Code = Code & "nbr_lignes=2" & vbCrLf
    Code = Code & "Public Const serveur = ("http://intranet.monlien")" & vbCrLf
     
    Code = Code & "While ActiveSheet.Cells(nbr_lignes, 3).Value <> """ & vbCrLf
    Code = Code & "Cells(nbr_lignes, 19).Select" & vbCrLf
    Code = Code & "valeur = ActiveCell.Value" & vbCrLf
    Code = Code & "adresse = serveur & valeur" & vbCrLf
    Code = Code & "ActiveSheet.Hyperlinks.Add anchor:=Selection, Address:=adresse" & vbCrLf
    Code = Code & "nbr_lignes = nbr_lignes+1" & vbCrLf
    Code = Code & "WEnd" & vbCrLf
    Code = Code & "End Sub"
     
    With ActiveWorkbook.VBProject.VBComponents(ActiveSheet.Name).CodeModule
    NextLine = .CountOfLines + 1
    .insertlines NextLine, Code
    End With
    Mon souci se situe à cette ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Code = Code & "Public Const serveur = ("http://intranet.monlien")" & vbCrLf
    Comme ma chaîne est déjà entre guillemmets, je ne peux pas rajouter ceux qui encadrent le lien.

    Est-ce que quelqu'un verrait une solution à ça?

    Merci

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonjour

    Double les guillemets
    Supprime les parenthèses
    Si la constante est déclarée dans le module, supprime "Public"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Code = Code & "Const serveur = ""http://intranet.monlien""" & vbCrLf

    bonne soirée
    michel

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 88
    Points : 46
    Points
    46
    Par défaut
    Merci beaucoup Michel.

    Ca fonctionne bien mieux comme ça.

    Bonne soirée.

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. insertion dynamique de lignes dans un tableau
    Par loreleï85 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 22/06/2006, 17h32
  2. Chargement dynamique de code
    Par Ylias dans le forum C
    Réponses: 27
    Dernier message: 02/06/2006, 08h21
  3. Réponses: 4
    Dernier message: 30/03/2006, 16h20
  4. [Tableaux] Insertion dynamique ligne dans un tableau
    Par masseur dans le forum Langage
    Réponses: 12
    Dernier message: 28/03/2006, 14h53
  5. insertion automatique de code et d import
    Par benohite dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 17/11/2003, 09h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo