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 :

Problème Récupérer Valeur d'un TextBox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Mai 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Afrique Du Sud

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2011
    Messages : 6
    Par défaut Problème Récupérer Valeur d'un TextBox
    Bonjour à tous,

    Je débute en VBA Excel et j'ai un problème pour récupérer la valeur d'une feuille à créer .

    Voici le bout de code que j'ai pu faire

    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
    Function Feuill_Pt (ByVal NameSheet As String) As Boolean
    Dim n As Integer
     
    Sheets.Add: ActiveSheet.Name = NameSheet
     
    n = 1 'Affecter valeur 1 à n
    Sheets(NameSheet).Select  'X=Le nom de ta feuille
    Sheets(NameSheet).Move Before:=Sheets(n)   'Déplace la feuille X avant la dernière feuille comptée.
     
    Worksheets(NameSheet).Activate
     
    End Function
     
     
    Function IsExist(ByVal NameSheet As String) As Boolean
    Dim oSheet As Worksheet
     
    For Each oSheet In ThisWorkbook.Sheets
        If oSheet.Name = NameSheet Then IsExist = True: Exit For
    Next oSheet
     
    End Function
     
    Private Sub BUT3_Click()
    Filename = Application.GetOpenFilename("Fichier texte (*.txt),*.txt")
    FORM_DAT.Show
    If Not IsExist(Dat) Then Feuill_Pt (Dat)
     
    End Sub
     
    Private Sub FBUT1_Click()
    Dat = TBOX1.Value
    FORM_DAT.Hide
    Unload Me
    End Sub
    Le but étant de sélectionner un fichier texte à traiter puis d'importer les résultats dans une nouvelle feuille sous Excel que je nommerai avec la variable dat. La variable correspond à la valeur d'un textbox que je récupère à partir d'une form. Mais j'ai chaque l'erreur 1004 et le code plante sur la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets.Add: ActiveSheet.Name = NameSheet
    Dans la fonction Feuill_Pt en début de mon code.

    Pourquoi ?
    Je ne comprends pas d'ou vient l'erreur.

    Merci par avance de votre aide.
    John

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    La ligne correspond à 2 instructions. Laquelle lève l'erreur?

    Si c'est la deuxième, c'est probablement qu'il existe déjà une feuille du même nom.

    Cordialement,

    PGZ

  3. #3
    Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Mai 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Afrique Du Sud

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2011
    Messages : 6
    Par défaut
    Le problème ne vient pas de là je pense car j'utilise cette fonction autrepart et je n'ai pas de problème mais avec un code du type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Not IsExist("Stations") Then Feuill_Pt ("Stations")
    Le problème vient je pense de ma variable Dat

    à la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    FORM_DAT.Show
    If Not IsExist(Dat) Then Feuill_Pt (Dat)
    Je crois qu'il affecte la valeur "" à Dat mais pourquoi ???

    Merci encore de ton aide.

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 176
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Effectivement, l'erreur doit venir de là If Not IsExist(Dat) Then Feuill_Pt (Dat).
    Dans ton code, Feuill_Pt est une fonction booléenne que tu traites sur cette ligne comme une méthode.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Not IsExist(Dat) Then MsgBox Feuill_Pt(Dat)
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Not IsExist(Dat) Then maVariable = Feuill_Pt(Dat)
    Serait correct.

    Cela suppose évidemment que ta variable Dat contienne bien un string.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

Discussions similaires

  1. Petit problème récupérer valeur
    Par punisher999 dans le forum JDBC
    Réponses: 0
    Dernier message: 18/10/2010, 04h06
  2. Réponses: 3
    Dernier message: 18/09/2007, 15h54
  3. Problème récupérer valeurs de JTextField
    Par adn013 dans le forum Composants
    Réponses: 5
    Dernier message: 15/06/2007, 11h59
  4. Problème récupérer valeurs de JTextField
    Par adn013 dans le forum Composants
    Réponses: 4
    Dernier message: 14/06/2007, 15h31
  5. [c#]récupérer valeur d'un TextBox dans un Repeater
    Par Filippo dans le forum ASP.NET
    Réponses: 1
    Dernier message: 20/03/2007, 10h48

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