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

VB 6 et antérieur Discussion :

comment prend un line de Listbox vers Textbox


Sujet :

VB 6 et antérieur

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut comment prend un line de Listbox vers Textbox
    Salut toulemonde ! pardon de mon francais casé ,
    j'ai créer un list des url et je l ' ai met dans un Listbox puis je veus créer un timer qui faire commencer la navigation de premier line (url) et reste quelque minute puis saute a la deuxieme line (url) jusqu a la fin comment je peu faire ç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
    Private Sub Form_Load()
    Timer1.Interval = 600 ' Add these 3 lines of code where ever you
    'want timer to start calling the function
    Timer1.Enabled = True
    intCnt = 1
    End Sub
    Private Sub Timer1_Timer()
    If intCnt = 20 Then
    WebBrowser1.Navigate "un line apres l'autre"
    intCnt = 1
    Else
    intCnt = intCnt + 1
    End If
    End Sub
    et merci boucoup

  2. #2
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Quelque chose de ce genre ?

    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
    Dim intCnt as Integer
    Private Sub Form_Load()
      Timer1.Interval = 600 ' Add these 3 lines of code where ever you
      'want timer to start calling the function
      Timer1.Enabled = True
      intCnt = 1
    End Sub
    Private Sub Timer1_Timer()
      If intCnt = 20 Then
        intCnt = 1
      Else
        intCnt = intCnt + 1
      End If
       WebBrowser1.Navigate List1.List(intCnt)
    End Sub
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

  3. #3
    Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Merci monsieur Delbeke de ton aide , mais je veus naviguer tout les url un apres l'autre et voila j'ai trouve un code qui permet de coller un liste des valeur (url) a partir d'un fichier Excel,
    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
     
    With objXLApp
    .Workbooks.Open "D:\Documents and Settings\Abdeslam\Bureau\book1.xlsx"
    .Workbooks(1).Worksheets(1).Select
     
    For intLoopCounter = 1 To 10
    List1.AddItem .Range("A" & intLoopCounter)
    Next intLoopCounter
     
    .Workbooks(1).Close False
    .Quit
    End With
     
    Set objXLApp = Nothing
    End Sub
    et voila je veus un code qui coller un url apre l'autre (a partir de listbox) dans Textbox peur commencer la navigation

    je pense qui sert a et un code je pense qu'il existe dans la programation de VB ,

  4. #4
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Bravo! tu as trouvé le code qui charge les url dans un listbox. Ce listbox n'est pas obligatoirement visible (.Visible = False), mais tu pourrais tout aussi bien charger les url dans un tableau à une dimension...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim strTableOfURLs (1 to 10) As String  '<-- just add this line here
    For intLoopCounter = 1 To 10
    ' List1.AddItem .Range("A" & intLoopCounter)  <-- and replace this one
        strTableOfURLs(i) = .Range("A" & intLoopCounter)  ' <-- with this one
    Next intLoopCounter
    Notes aux lecteurs...
    Veuillez excuser mes commentaires écrits en anglais... Je crois que bergeny comprend mieux cette langue... Me tromperais-je, bergeny ?

    Pour ajouter l'url courante dans un TextBox...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Timer1_Timer()
      If intCnt = 20 Then
        intCnt = 1
      Else
        intCnt = intCnt + 1
      End If
        txtActiveURL.Text = strTableOfURLs(intCnt)      ' <-- add this line
        WebBrowser1.Navigate strTableOfURLs(intCnt)  ' <-- and modify this one.
    End Sub
    Ça va ?

  5. #5
    Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup zazaraignée de votre aide , Mais je suis désoler , j'ai pas trouver la liste des url dans la Listbox ,je souhaite que tu mettre le code dans visual basic et tester-le

    voila ! l'error c'est la

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    'the Debug shown the error there --> 
     
    strTableOfURLs(i) = .Range("A" & intLoopCounter) '<-- The error msg said: run-time error '9'
    'subscript out of range
    et voila le code complete de projet :
    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
    Private Sub Timer1_Timer()
      If intCnt = 20 Then
        intCnt = 1
      Else
        intCnt = intCnt + 1
      End If
        txtActiveURL.Text = strTableOfURLs(intCnt)      ' <-- add this line
        WebBrowser1.Navigate strTableOfURLs(intCnt)  ' <-- and modify this one.
    End Sub
    Private Sub form_load()
    Dim objXLApp As Excel.Application
    Dim intLoopCounter As Integer
    
    Set objXLApp = New Excel.Application
    
    With objXLApp
    .Workbooks.Open "D:\Documents and Settings\Abdeslam\Bureau\book3.xlsx"
    .Workbooks(1).Worksheets(1).Select
    
    Dim strTableOfURLs(1 To 10) As String
    For intLoopCounter = 1 To 10
    strTableOfURLs(i) = .Range("A" & intLoopCounter) '<-- l'error c'est la !!
    Next intLoopCounter
    
    .Workbooks(1).Close False
    .Quit
    End With
    
    Set objXLApp = Nothing
    End Sub
    merci de me suivre

  6. #6
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    le tableau strTableOfURLs n'est pas un listbox... C'est une variable tableau ou un vecteur si tu préfères, dument déclaré avec la clause Dim et dimentionné explicitement avec les indices 1 à 10. C'est comme une variable ordinaire mais qui peut contenir 10 valeurs au lieu d'une seule.

    Je n'ai fait qu'utiliser le code que tu nous as fourni pour récupérer des données d'un classeur Excel (que nous n'avons pas, nous... et qu'il n'est pas utile que nous ayons de toutes façons...). Il apparaît que tu ne comprends pas vraiment ce que tu dois faire... Il est vrai que je n'ai pas tout vérifié la première fois.

    Ce qu'une seconde lecture de ton code me dit, c'est qu'il te manque peut-être une variable quelque part pour récupérer les valeurs de la feuille de calcul, soit la feuille de calcul elle même... Il est tard (près de minuit ici) et je vais voir demain... à moins que quelqu'un d'autre s'y colle... vu le décalage horaire.

    [Edit] [...] (un paragraphe biffé, puisque plus nécessaire...)

    zaza

  7. #7
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    T'as de la veine! Insomnie...

    Je dois te dire que j'ai commis un oubli... il fallait déclarer le tableau en variable globale... Ça me paraissait trop évident... j'ai oublié... C'est sans doute pour ça que ça ne marchait pas...

    Et juste au cas, pour que ça marche, il faut bien entendu ajouter une référence (menu Projet, Références) à l'application Excel (mais je crois que tu sais déjà).

    Ceci dit, voici du code testé et qui marche :
    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    Option Explicit
    Private strTableOfURLs(1 To 10) As String
     
    Private Sub Form_Load()
        ' Déclaration des variables nécessaires pour lire dans un fichier Excel.
        Dim xl As New Excel.Application   ' une variable pour Excel,
        Dim wb As Excel.Workbook      ' une variable pour le classeur,
        Dim ws As Excel.Worksheet   ' une variable pour la feuille de calcul
        ' et une variable objet Range pour la boucle For Each...
        Dim cellule As Excel.Range    
        Dim i As Integer    ' compteur d'indice du tableau strTableOfURLs
        i = 1   ' initialisation du compteur
        Set wb = xl.Workbooks.Open(App.Path & "\URLs.xls") ' ouverture du fichier
        ' ce classeur contient une plage nommée 'urls'
        ' dans la feuille nommée 'adresse'
        Set ws = wb.Sheets("adresses")
        For Each cellule In ws.Range("urls")
            strTableOfURLs(i) = CStr(cellule.Value) ' on s'assure d'avoir une 'string'
            i = i + 1   ' incrémentation de l'indice du tableau
        Next
        wb.Close    ' fermeture du fichier
        xl.Quit     ' fermeture de l'application Excel
        Set ws = Nothing    ' les variables objet sont virées de la mémoire (flushed)
        Set wb = Nothing
        Set xl = Nothing
        '
        ' Paramètres du Timer
        With Timer1
            .Interval = 10000 ' une seconde (10000 ms. = 10 sec.)
            .Enabled = True  ' démarré (started)
        End With
    End Sub
     
    Private Sub Form_Activate()
        ' désactive le textBox txtSctiveURL et le bouton de navigation
        txtActiveURL.Locked = True
        txtActiveURL.TabStop = False
        cmdNavigate.Enabled = False
        ' Affiche une page pour éviter l'affichage
        ' d'un message d'erreur dans le WebBrowser
        wbrAffichage.Navigate strTableOfURLs(10)
        txtActiveURL.Text = strTableOfURLs(10)
    End Sub
     
    Private Sub cmdStopTimer_Click()
        ' Arrêt du timer
        Timer1.Enabled = False
        ' Activation du champ d'adresse et du bouton de navigation
        txtActiveURL.Locked = False
        txtActiveURL.TabStop = True
        cmdNavigate.Enabled = True
        ' donne le focus au champ url et sélectionne son contenu
        With txtActiveURL
            .SelStart = 0
            .SelLength = Len(.Text)
            .SetFocus
        End With
    End Sub
     
    Private Sub cmdNavigate_Click()
        wbrAffichage.Navigate txtActiveURL.Text
    End Sub
     
    Private Sub cmdQuitter_Click()
        End
    End Sub
     
    Private Sub Timer1_Timer()
        Static i As Integer     ' static makes it keaping its value
        i = i + 1   ' initialize to 1 as first index of the private global table of urls
        i = IIf(i = 10, 1, i)   ' use the IIF function to set conditional value to a variable
        txtActiveURL.Text = strTableOfURLs(i)
        wbrAffichage.Navigate strTableOfURLs(i)
    End Sub
    et un aperçu du contenu du fichier Excel et un de l'application en exécution :

  8. #8
    Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Je ne sais pas comment vous remercier zazaraignée c'est vraiment gentil de ta part ,il etait marcher comme il faut mantenant mais je trouve que la method de fichier exel preparer a l'avance n'est pas utile , donc je souhaite de mettre un textbox dont en peut choisis un autre fichier d'execel et en nommais la worksheet avec asresses et la liste A jusqu a la fin avec "urls" j'essais de trouve ça et quand j'ai le trouve je vous noter , et merci beaucoup

  9. #9
    Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    excuse moi de mon bcp de questions , est ce que je peus mettre un code peur aller a la deuxieme line des urls quand la premiere page (line) terminer completement ? et merci d'avance

  10. #10
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    La deuxième ligne? elle est à l'indice 2, non ?

    Excuses-moi, là vraiment, je ne comprends pas... Le code que je t'ai donné affiche, grâce au timer, chacune des url du fichier excel à intervalles de 10 secondes... donc, fatalement, la deuxième ligne (url) s'affiche...

    Tu peux mieux t'exprimer afin que je comprenne la question ?

  11. #11
    Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    merci bcp , j'ai qlq questions :

    1- SVP est ce que je peut créer un button , quand je le click le Timer saute a la page suivante (la line suivante)

    2- est ce que je peut mettre un code , quand un lien va commencer le timer va sauter a le suivant par example: (www.google.com)

    3- y a-t-il un code peur faire arrete le timer et la navigation automatiquement quand la liste termine, j'attend votre repense avec patiense ! et merci a l'avance

  12. #12
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Tu as tout ce que tu as besoin dans les exemples donnés précédemment. Si tu examines bien le code, que tu comprends bien ce que fait chaque ligne, tu devrais donc pouvoir déduire le code nécessaire.

    La saison de la pêche aurait-elle commencé... je me demande si tu ne me prends pas pour un gros poisson ! En tout cas, moi, me ne mords plus.

    Achète un livre ou empruntes-en un d'une bibliothèque...

Discussions similaires

  1. copier listbox vers textbox
    Par babia007 dans le forum VBA Access
    Réponses: 2
    Dernier message: 31/01/2015, 18h45
  2. [XL-2007] ListBox vers TextBox d'un autre USF
    Par apdf1 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/10/2011, 18h31
  3. [XL-2007] listbox vers listboxpuis vers textbox
    Par grisan29 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 10/06/2010, 21h20
  4. Listbox vers Textbox via clée primaire
    Par Remus91 dans le forum IHM
    Réponses: 5
    Dernier message: 19/01/2009, 12h34
  5. Réponses: 16
    Dernier message: 20/03/2006, 23h21

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