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 :

ver2016 copie

Les renseignements utiles se trouvent dans l'écran suivant :

ver2016b

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.

vconf

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+

Rechercher des sujets similaires à "remplacer tableau plage laissant meme nom"