Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

user form et base de donnee

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

rainbow69006

XLDnaute Occasionnel
Bonjour

J'ai un user form avec 3 text box : "tbA" "tbB" "tbC"
J'ai 2 feuilles de donnes qui sont identiques : Feuille1 et feuille2
Dans ces feuilles j'ai des donnes dans les colonnes A, B et C

par exemple quand je rentre dans ma text box 'tbA' le mot avions,dans ma text box 'tbb' le mot voiture et dans ma textbox 'tbc' le mot camion et quand je valide, je souhaiterais que ces 3 mots apparaissent sur mes 2 feuilles, sur la derniere ligne non utiliser, avec avions dans la colonne A, voiture dans la colonne B et Camion dans la colonne C.

Merci de votre aide
 
Re : user form et base de donnee

Re,

regarde le code ci dessous, envoie le contenu du textbox nommé "TextBox1" vers l 1ère ligne vide de la colonne A :

Code:
Private Sub CommandButton1_Click()
    Range("A65536").End(xlUp).Offset(1, 0).Value = TextBox1.Value
End Sub

bonne soirée
@+
 
Re : user form et base de donnee

Euh mais comment le programe sait que je veu qu'il copie ses donnee sur la feuille nomme 1 et sur la feuille nomme 2 ?

PS: ce que j'ai oublier de preciser ces que mes 4 premiere ligne sont vides et doivent le rester
 
Re : user form et base de donnee

Re,

essaye comme ci dessous, si j'ai bien compris...

Code:
Private Sub CommandButton1_Click()
With Sheets("Feuil1").Range("A65536").End(xlUp)
    If IsEmpty(.Offset(5, 0).Value) Then
        .Offset(5, 0).Value = TextBox1.Value
    Else
        .Offset(1, 0).Value = TextBox1.Value
    End If
End With
End Sub

@+
 
Re : user form et base de donnee

re, bonsoir Pierrot

Une solution qui traite les deux feuilles en même temps, à tester : ( Vérifie bien le nom des feuilles )

Code:
Private Sub CommandButton1_Click()

 Dim Ws As Worksheet, lign As Long
 Application.ScreenUpdating = False
 For Each Ws In Sheets(Array("Feuille1", "Feuille2"))
   With Ws
     lign = .Range("A65536").End(xlUp).Row
        If lign < 5 Then
           lign = 5
          .Cells(lign, 1).Value = tbA.Value
          .Cells(lign, 2).Value = tbB.Value
          .Cells(lign, 3).Value = tbC.Value
        Else
           .Range("A65536").End(xlUp).Offset(1, 0) = tbA.Value
           .Range("B65536").End(xlUp).Offset(1, 0) = tbB.Value
           .Range("C65536").End(xlUp).Offset(1, 0) = tbC.Value
        End If
   End With
 Next
 Application.ScreenUpdating = True

End Sub

Je vois que tu poses des questions sur les userforms, je te conseille ces liens:
Utiliser les UserForm en VBA Excel - Club d'entraide des développeurs francophones
Utiliser les contrôles dans un UserForm, en VBA Excel - Club d'entraide des développeurs francophones



Bonne soirée
 
Re : user form et base de donnee

Bqtr j'ai essaye ce que tu m'a envoye c'est exactement ce que je voullais.

Malheureusement je me suis apercu que mes 2 premieres textbox (tra et trb), eh bien je devais mettre plutot des combobox.
**pour la combobox qui remplace 'tra' il doit prendre les valeurs de la feuille1, colonne A, a partir de la 6eme ligne.
**pour la combobox qui remplace 'trb' il doit prendre les valeurs de la feuille1, colonne B, a partir de la 6eme ligne

Si tu peu encore m'aider

merci
 
Re : user form et base de donnee

Re,

Peux tu joindre un fichier avec tes deux feuilles et ton Useform.

Précédemment tu souhaitais remplir tes feuilles à partir de la ligne 5, et là tu veux que tes combobox se remplissent avec les valeurs de le feuille 1 à partir de la ligne 6.
Que se passe t'il si tu pars d'une feuille vierge ou d'une feuille où seulement la ligne 5 est renseignée ? ce doit être possible puisque dans la macro de mon message précédant il faut tester le N° de la dernière ligne non vide de la colonne A.

Avec un fichier ce sera plus simple.

A+
 
Re : user form et base de donnee

Euh en fait dans ma feuille 1 et 2 qui je le rapelle sont identique
eh bien les 4premiere ligne sont vides, la 5eme ligne est utilise pour le titre des colonnes, et a partir de la 6eme ligne on a des donnes.
 
Dernière édition:
Re : user form et base de donnee

Je ne peu pas t'envoyer mon fichier c'est pour le boulot mais j'en ai fais un qui ressemble

je voudrais que dans mon userform:
- il y ait une combobox1: qui me premettent de choisir si c'est un A380, un A360 etc..
- il y ait une combobox2: qui me permettent de chosir si c'est une porte,une fenetre etc..
-il y ait une textbox ou je puisse rentrer si c'est super, nul, etc...

et quand je clic sur valider sa me rentre les infos sur la derniere ligne.
 

Pièces jointes

Re : user form et base de donnee

En fait j'ai 2 problemes avec les combobox:
Mois ce que j'ai fais c'est que j'ai mis en rowsource : A6:A6000

-Le probleme c'est que si j'ai par exemple 10 avions A380 dans la colonne A eh bien dans mon menu deroulant j'aurais 10fois A380 alors que moi je le veu juste une fois
-Le probleme c'est que vu que j'ai mis jusqu'a 6000 (sa me laisse de la marge pour ajouter des lignes) eh bien sa me fais un enorme blanc dans ma liste deroulante.
 

Pièces jointes

Re : user form et base de donnee

Oaui sa marche comme sa, j'y avais pas pense.

Par contre comment on peu faire pour qu'il y ait un nettoyage des combobox et de la text box?

En effet des fois quand je reouvre l'userform il apparait ce que j'ai valider la derniere fois
 
Re : user form et base de donnee

Salut rainbow69006, Pierrot, Pierre Olivier, le Forum

En l'absence de mes Camarades 🙂

essaye soit de

- Vider et fermer l'UserForm
- Inclure des lignes de codes dans le CommandButton "Valider"

Bonne Journée
 

Pièces jointes

Re : user form et base de donnee

Et encore une question.
J'aimerais que le programe verifie quand je valide que ce qu'il y a dans ma textbox n'existe pas encore dans la colonne C de ma feuille (pour eviter que j'ai des doublons dans ma colonne C)

Une personne du forum m'a montrer ce code :
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cell As Object
If Target.Value = "" Then Exit Sub
For Each cell In Intersect(Columns("C:C"), Cells)
If cell.Address <> Target.Address And cell.Value = Target.Value Then
UserForm1.Show
Target.Select
Exit For
End If
Next cell
End Sub

Mais j'arrive pas a l'adapter
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
6
Affichages
904
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…