Inscrire les données dans 2 tableaux sous certaines conditions

J'aimerais que lorsque j'entre un nouveau personnel dans mon tableau, si ce personnel fait partie d'une certaine catégorie les données de ce personnel s'inscrive dans un second tableau Voici ce que j'ai tenté en rajoutant dans ma procédure de base qui fonctionne bien wsPermis, tblPermis,derlignePermis.

Est ce que ce

If UserForm2.ComboBoxCELL.Value Like "Maintenance" Then

tblPermis.ListRows.Add derlignepermis

tblPermis.ListRows(derlignepermis).Range(1, 1).Value = selectedFRUK

n'a aucun sens

Dim ws As Worksheet

Dim wsPermis As Worksheet

Dim tbl As ListObject

Dim tblPermis As ListObject

Dim derligne As Long

Dim derlignepermis As Long

Dim selectedFRUK As String

Dim FSO As Object

Dim DossierParent As Object

Dim CheminReseau As String

Dim Confirmation As VbMsgBoxResult

Dim Nomdossier As String

Dim FeuilleDonnees As Worksheet

Dim DerniereLigne As Long

Dim lastRow As Long

Dim lastRowPermis As Long

Dim rng As Range

Dim i As Long

Dim isDuplicateInCol3 As Boolean

Dim isDuplicateInCol4 As Boolean

' spécifier l'emplacement du tableau

Set ws = ThisWorkbook.Sheets("Personnel")

Set wsPermis = ThisWorkbook.Sheets("Permis")

' verifier existence tableau

On Error Resume Next

Set tbl = ws.ListObjects("Tableau4")

Set tblPermis = wsPermis.ListObjects("tableau1")

On Error GoTo 0

' Trouver la dernière ligne utilisée dans le tableau Personnel

derligne = tbl.ListRows.Count + 1

derlignepermis = tblPermis.ListRows.Count + 1

'Procedure pour eviter les doublons
'********************

' ENREGISTREMENT DES DONNEES

   ' Vérifier la sélection de FR/UK pour ne pas oublier le distingo

If OptionButtonFR.Value = True Then

selectedFRGER = UserForm2.OptionButtonFR.Caption

ElseIf OptionButtonGER.Value = True Then

selectedFRGER = UserForm2.OptionButtonGER.Caption

Else

MsgBox "Select FR or GER"

Exit Sub

End If

' saisie des données dans le tableau

tbl.ListRows.Add derligne

tbl.ListRows(derligne).Range(1, 1).Value = selectedFRUK

tbl.ListRows(derligne).Range(1, 3).Value = UserForm2.TextBoxNAME

tbl.ListRows(derligne).Range(1, 4).Value = UserForm2.TextBoxFIRSTNAME

tbl.ListRows(derligne).Range(1, 5).Value = UserForm2.TextBoxDate

tbl.ListRows(derligne).Range(1, 6).Value = UserForm2.TextBoxPlace

tbl.ListRows(derligne).Range(1, 9).Value = UserForm2.TextBoxArrival

tbl.ListRows(derligne).Range(1, 10).Value = UserForm2.ComboBoxSpe

tbl.ListRows(derligne).Range(1, 11).Value = UserForm2.ComboBoxCELL

If UserForm2.ComboBoxCELL.Value Like "Maintenance" Then

tblPermis.ListRows.Add derlignepermis

tblPermis.ListRows(derlignepermis).Range(1, 1).Value = selectedFRUK

tblPermis.ListRows(derlignepermis).Range(1, 3).Value = UserForm2.TextBoxNAME

tblPermis.ListRows(derlignepermis).Range(1, 4).Value = UserForm2.TextBoxFIRSTNAME

tblPermis.ListRows(derlignepermis).Range(1, 5).Value = UserForm2.ComboBoxSpe

tblPermis.ListRows(derlignepermis).Range(1, 6).Value = UserForm2.ComboBoxCELL

End If

' Vider les cases pour enregistrer un nouveau personnel directement à la suite
'**********

'Message pour confirmer l'enregistrement

MsgBox " GREAT SUCCESS "

Else

' msgbox en cas d'erreur de saisie

MsgBox " Il manque le nom ou le prenom ", vbExclamation, " Erreur de saisie " ' fin de vérification si il manque un nom ou un prenom

Exit Sub

End If

Si cela peut aider à où je veux en venir.

Quand je créer un nouveau personnel, je veux en premier lieux que çà l'inscrive dans mon tableau de ma feuille Personnel, pour l'administration.

Et en fonction de chaque poste de personnel celà l'inscrive dans un autre tableau dans lequel il y aura des données en rapport, par exemple un personnel inscrit à un poste commençant par " Maintenance " serait inscrit, en plus du tableau Pesonnel dans un tableau sur une autre feuille où il y aurait des chose en rapport à la maintenance; un personnel dont le poste commencerait par " Admin " atterrirait dans un tableau sur une feuille " Admin "

Des idées pour mon problème ?

Bonjour

Tu devrais joindre ton fichier, au besoin anonymisé...

Bye !

En fait c'est la condition " Maintenance"

If UserForm2.ComboBoxCELL.Value Like "Maintenance" Then

qui ne fonctionne pas si je l'enlève cela inscrit dans le tableau

J'ai peut être un début de solution cependant :

-j'ai changé pour reprendre directement la valeur de la cellule plutot que la combobox

-j'ai changé " Maintenance" par " Chef Maintenance " qui est une des possibilités qui contient " Maintenance "

et là çà m'inscrit dans mon second tableau

If tbl.ListRows(derligne).Range(1, 11).Value like " Chef Maintenance " Then

En fait ce que je cherche c'est que ma condition soit bonne pour toutes les possibilités qui contiennent " Maintenance "

Rechercher des sujets similaires à "inscrire donnees tableaux certaines conditions"