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 :

Inserer un tableau dans un usf


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 300
    Points : 107
    Points
    107
    Par défaut Inserer un tableau dans un usf
    Bonjour
    Je cherche a inserer un tableau dans un USF, sachant que le nbre de colonne est fixe mais que celui des ligne evolue.

    j'ai cherché un peu partous mais je n'ai pas trouver, on m'a parler de "SpreadSheet", mais je ne vois pas comment l'utiliser. Si quelqu'un a une idée ou des exemples.

    Merci d'avance

  2. #2
    Membre éclairé Avatar de sabzzz
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 748
    Points : 879
    Points
    879
    Par défaut
    bonjour Didpa,

    copie ce code sur la page du userform,

    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
    Private Sub UserForm_Initialize()
    Dim wks As OWC10.Spreadsheet
    Set wks = Me.Controls.Add("OWC10.Spreadsheet.10", True)
    With wks
        .DisplayToolbar = True
        .DisplayHorizontalScrollBar = True
        .DisplayWorkbookTabs = True
        .DisplayColumnHeadings = True
        .DisplayRowHeadings = True   
        For i = 1 To 3
        .Sheets(i).Name = "A" & i
        Next   
        For Each c In Sheets("Feuil1").Range("A1:C" & Range("A65536").End(xlUp).Row)
        .Sheets(1).Range(c.Address) = c
        Next    
        With .Sheets(1).Range("A1:C" & Range("A65536").End(xlUp).Row)
            .Font.Bold = True
            .Font.Color = "Blue"
            .Borders.Weight = xlThick
            .HorizontalAlignment = xlHAlignCenter
        End With   
    End With
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub UserForm_Terminate()
    On Error Resume Next
    Dim LesRefs As Object
    Set LesRefs = ThisWorkbook.VBProject.References
    For i = 1 To LesRefs.Count
        If Left(UCase(LesRefs(i).Name), 4) = "OWC1" Then
          LesRefs.Remove LesRefs.Item(LesRefs(i).Name)
          Exit For
        End If
      Next
    End Sub
    et celui-ci servira à démarrer le userform, (dans un module)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub afficher_formulaire()
    ThisWorkbook.VBProject.References.AddFromFile "C:\Program Files\Fichiers communs\Microsoft Shared\Web Components\10\OWC10.DLL"
    UserForm1.Show
    End Sub

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 300
    Points : 107
    Points
    107
    Par défaut
    bonjour

    alors j'ai essayé, mais voilà j'ai ce message d'erreur "Erreur d'execution 1004"
    l'accès par programme au projet Visual basic n'est pas fiable.

    et c'est cette ligne là qui est surligné après débogage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub afficher_formulaire()
    ThisWorkbook.VBProject.References.AddFromFile "C:\Program Files\Fichiers communs\Microsoft Shared\Web Components\10\OWC10.DLL"UserForm1.Show
    End Sub
    Cordialement et encore merci pour votre aide

  4. #4
    Membre éclairé Avatar de sabzzz
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 748
    Points : 879
    Points
    879
    Par défaut
    bonjour Didpa,

    il faut que la sécurité macro soit activé sur faible,
    et vérifier le chemin d'accès pour OWC10

    sur le fichier ci-joint il y a une macro "AfficherLesGuids_Propriétés" pour verifier le numéro du guid de ton owc, tu devra ensuite modifier la macro
    "version" selon ta version.

    http://cjoint.com/?eipPolsfO3

  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut reference manquante
    bonjour a tous les deux

    je n'ai pas le owc !!,
    la macro de recherche fait choux blanc


    (windows seven 64)
    auriez vous une idée ???

    je suis tres interessé par ce projet


    merci d'avance

  6. #6
    Membre éclairé Avatar de sabzzz
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 748
    Points : 879
    Points
    879
    Par défaut
    bonjour patricktoulon,

    tu peut le télécharger sur microsoft,
    voici le lien pour xl2002
    http://www.microsoft.com/downloads/d...displaylang=EN
    mais attention, si ce n'est pas ta version (xl2002), fait une recherche car c'est important de télécharger celui pour ta version.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 300
    Points : 107
    Points
    107
    Par défaut
    Salut

    Merci encore, cela fonctionne, mais et oui il y a un mais,

    1- Est t-il possible de remplir tableau une ligne sur 2 d'une couleur différente, et l'entête une autre
    j'ai essayé mais je n'arrive pas a trouver le bon code.

    2- Est il possible de modifier l'intérieur de la cellule, afin quelle remettre le tableau à jour ?

    Cordialement

    j'avais oublié, comment faire pour qu'il ne selectionne pas la ligne A1.
    car comme ca il la sélectionne quand même.
    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    Private Sub UserForm_Initialize()
    Dim wks As OWC10.Spreadsheet
    Set wks = Me.Controls.Add("OWC10.Spreadsheet.10", True)
    With wks
        .DisplayToolbar = False
        .DisplayHorizontalScrollBar = False
        .DisplayWorkbookTabs = False
        .DisplayColumnHeadings = False
        .DisplayRowHeadings = False
        .Caption = "MySpreadSheet1"
        For i = 1 To 3
        .Sheets(i).Name = "A" & i
        Next
     
        For Each c In Sheets("Matériel").Range("A2:H" & Range("A65536").End(xlUp).Row)
        .Sheets(1).Range(c.Address) = c
        Next
     '----------Mise en forme du texte----------
        With .Sheets(1).Range("A2:H" & Range("A65536").End(xlUp).Row)
            .Font.Bold = False
            .Font.Color = "Red"
            .Borders.Weight = xlThick
            .HorizontalAlignment = xlHAlignCenter
            .EntireColumn.AutoFit 'ajuste la largeur des colonnes
        End With
     
     '-----------Taille du control & position----------
    For Each Ctrl In Me.Controls
     If Ctrl.Caption = "MySpreadSheet1" Then
       Ctrl.Height = 156
       Ctrl.Width = 403
       Ctrl.Top = 152
       Ctrl.Left = 18
      End If
     
    Next
    End With
    End Sub
    Merci

  8. #8
    Membre éclairé Avatar de sabzzz
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 748
    Points : 879
    Points
    879
    Par défaut
    bonjour Didpa,

    j'essaie présentement de créer une Class pour les événement mais je n'y suis pas encore arrivé, dès que j'aurai réussi, je reviendrai vous en faire part.
    bonne programmation!

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Je vais vous donner un peu de lecture, il s'agit de deux tutos qui ont été utilisés dans un formulaire Access et non une User Form Excel, mais le principe d'utilisation du composant OWC est identique :

    http://starec.developpez.com/tuto/msfcillimitee/
    http://starec.developpez.com/tuto/listesowc/

    Philippe

  10. #10
    Membre éclairé Avatar de sabzzz
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 748
    Points : 879
    Points
    879
    Par défaut
    merci ! Philippe,

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

Discussions similaires

  1. [WD-2007] inserer un tableau dans une cellule en vbscript word
    Par battit64 dans le forum VBA Word
    Réponses: 5
    Dernier message: 14/06/2012, 18h19
  2. Comment inserer un tableau dans un datagridview
    Par kek's dans le forum VB.NET
    Réponses: 17
    Dernier message: 22/06/2010, 16h00
  3. Réponses: 1
    Dernier message: 18/04/2009, 08h20
  4. Réponses: 5
    Dernier message: 08/04/2009, 22h31
  5. inserer un tableau dans richtextbox
    Par sanach dans le forum VB.NET
    Réponses: 5
    Dernier message: 23/04/2008, 14h44

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