Remplacer un tableau par une plage de cellule en laissant le même nom
Bonjour,
J'ai le code VBA suivant (code du UserForm) qui me permet de remplir des données dans un UserForm et créer une ligne contenant les données saisies en enregistrant le UserForm. Sauf que le tableau tbl2Formations est passé en plage de cellule ayant le même nom "tbl2formations". Alors, qu'est que je dois changer dans ce code pour avoir le même résultat mais au lieu d'ajouter la ligne à un tableau, on ajoute la ligne à la suite de la plage de cellule et cette ligne rentre dans la plage de cellule "tbl2Formations", pour que derrière, quand on ajoute une autre ligne en utilisant le UserForm, on puisse l'ajouter à la suite des données saisies avant.
Private Sub cbEnregistrer_Click()
Dim Service As String
Service = txtService.Text
Dim Poste As String
Poste = txtPoste.Text
Dim Thème As String
Thème = txtThème.Text
Dim Formateur As String
Formateur = txtFormateur.Text
Dim Formation As String
Formation = txtFormation.Text
Dim Duree_Annee As String
Duree_Annee = txtDuree_Annee.Text
Dim VM As String
VM = txtVM.Text
Dim Autorisation_Employé As String
Autorisation_Employe = txtAutorisation_Employe.Text
Dim Nombre_a_Former As String
Nombre_a_Former = txtNombre_a_Former.Text
Dim wsh As Worksheet
Set wsh = ThisWorkbook.Worksheets("Liste des formations")
Set tbl2 = wsh.ListObjects("tbl2Formations")
Dim lRow As ListRow
Set lRow = rng.ListRows.Add
With lRow
.Range(1) = Service
.Range(2) = Poste
.Range(3) = Thème
.Range(4) = Formateur
.Range(5) = Formation
.Range(6) = Duree_Annee
.Range(8) = VM
.Range(9) = Autorisation_Employe
.Range(10) = Nombre_a_Former
End With
Unload Me
End Sub
Private Sub UserForm_Click()
End Sub
MERCI BEAUCOUP POUR VOTRE AIDE.
Private Sub cbEnregistrer_Click()
Dim Service As String
Service = txtService.Text
Dim Poste As String
Poste = txtPoste.Text
Dim Thème As String
Thème = txtThème.Text
Dim Formateur As String
Formateur = txtFormateur.Text
Dim Formation As String
Formation = txtFormation.Text
Dim Duree_Annee As String
Duree_Annee = txtDuree_Annee.Text
Dim VM As String
VM = txtVM.Text
Dim Autorisation_Employé As String
Autorisation_Employe = txtAutorisation_Employe.Text
Dim Nombre_a_Former As String
Nombre_a_Former = txtNombre_a_Former.Text
Dim wsh As Worksheet
Set wsh = ThisWorkbook.Worksheets("Liste des formations")
Set tbl2 = wsh.ListObjects("tbl2Formations")
Dim lRow As ListRow
Set lRow = tbl2.ListRows.Add
With lRow
.Range(1) = Service
.Range(2) = Poste
.Range(3) = Thème
.Range(4) = Formateur
.Range(5) = Formation
.Range(6) = Duree_Annee
.Range(8) = VM
.Range(9) = Autorisation_Employe
.Range(10) = Nombre_a_Former
End With
Unload Me
End Sub
C'EST LE CODE ACTUEL
Bonjour,
Veuillez utiliser le bouton </> pour coller du code sur le forum SVP
A+
<Private Sub cbEnregistrer_Click()
Dim Service As String
Service = txtService.Text
Dim Poste As String
Poste = txtPoste.Text
Dim Thème As String
Thème = txtThème.Text
Dim Formateur As String
Formateur = txtFormateur.Text
Dim Formation As String
Formation = txtFormation.Text
Dim Duree_Annee As String
Duree_Annee = txtDuree_Annee.Text
Dim VM As String
VM = txtVM.Text
Dim Autorisation_Employé As String
Autorisation_Employe = txtAutorisation_Employe.Text
Dim Nombre_a_Former As String
Nombre_a_Former = txtNombre_a_Former.Text
Dim wsh As Worksheet
Set wsh = ThisWorkbook.Worksheets("Liste des formations")
Set tbl2 = wsh.ListObjects("tbl2Formations")
Dim lRow As ListRow
Set lRow = tbl2.ListRows.Add
With lRow
.Range(1) = Service
.Range(2) = Poste
.Range(3) = Thème
.Range(4) = Formateur
.Range(5) = Formation
.Range(6) = Duree_Annee
.Range(8) = VM
.Range(9) = Autorisation_Employe
.Range(10) = Nombre_a_Former
End With
Unload Me
End Sub>
Bonjour,
Quand vous rédigez un message vous avez une rangée de boutons (outils qui vous permettent de mettre en forme du texte, joindre un fichier une image, du code et une tas de chose utile. Tout ces boutons réagissent au survol de la souris et indiquent brièvement à quoi ils servent.
Le bouton </> quand vous cliquez dessus affiche une petite fenêtre dans laquelle vous devez coller le code issu de votre classeur. Ensuite vous validez.
Ainsi le code conserve une mise en forme compréhensible et exploitable.
Bon ce n'est pas plus grave que ça, mais souvenez vous en pour a prochaine fois. Inutile de rajouter une quatrième version de ce code.
De toute façon le code ne semble y être pour rien dans votre problème..
Pendant que je suis dans les remarques préliminaires sachez que vous devez préciser votre version d'Excel dans votre profil. "Français " ne sous sert à rien.
Ce que nous avons besoin de savoir se trouve dans le munu d'Excel Fichier > Compte en cliquanrt sur le point d'interrogation : A propose d'Excel :
Les renseignements utiles se trouvent dans l'écran suivant :
Ce qui est intéressant c'est l'année 2016, 2021... et à la fin 32 bits
Notez que selon le cas au lieu de l'année vous pouvez trouver un indication qui indique que vous avez une version par abonnement "365"
C'est informations sont indispensable pour vous répondre correctement. Muni de ces informations allez dans la page d'accueil de ce forum et modifiez otre profil comme indiqué ci-dessous.
Ceci fait nous pourrons enfin nous pencher un peu plus sur votre question. Cependant je ne suis pas certain de bien comprendre cette question :
Vous avez commencé par créer un tableau dit "structuré" (à rayure) puis vous en avez changé et vous souhaitez maintenant rester dans un tableau plus traditionnel.
Sachez que le tableau d'origine structuré offre certains avantages et dispose d'une syntaxe qui n'a rien à voir avec les tableaux traditionnels donc entre boire ou conduire il faut choisir, mais il n'y a pas de cote mal taillée, c'est soit l'un soit l'autre.
Le code que vous avez joint correspond au type de tableau à rayure. On peut dire qu'il n'est pas adaptable aux tableau traditionnel qui ont d'autres fondamentaux.
C'est à vous de choisir dès maintenant, mais vous ne pouvez pas changer de style à tout propos.
Pour un usage très simple et des tableaux plutôt modestes, les tableaux anciens font depuis 40 ans des merveilles cependant sachez que les tableaux structurés offre de nombreux avantages que n'ont pas les anciens tableaux. De plus les tableaux modernes offre sans doute des possibiltés plus importantes mais sont aussi bien plus exigeantes avec l'utilisateur...
Donc veuillez bien préciser votre intention.
Dans tous les cas il me semble indispensable de joindre dès maintenant votre classeur : Le code ne sera pas suffisant pour vous répondre.
Pour les besoins du forum prévoyez de fournir un classeur débarrassé d'éléments personnels. Pas de noms réels, ni adresse ou N° de téléphone, brefs pas de données compromettantes. Ne conservez que quelques lignes si votre tableau est volumineux. L'important est qu'on ait une copie réaliste de votre classeur de travail.
Pour joindre votre fichier utiliser l'icône représentant une feuille avec un x puis naviguez dans vos dossiers et double-cliquez pour joindre votre classeur, le lien doit apparaitre dans votre réponse.
A+