Base de donnée fixe
Bonsoir à tous,
Je suis à travailler sur mon projet qui ne cesse de grandir. On m'a suggéré de ne pas avoir une base fixe cependant cela m'occasionne des problèmes. Mes champs se rapportent à différents formulaires. Je dois précisément avoir une colonne numéro qui est fixe dans ma base. Les numéros identifiant (qui doivent demeurer fixe) 1, 1.5 et autres doivent correspondre à au formulaire en jaune de suite.
Pour inscrire tout est nickel. Je crois que c'est plutôt au niveau de la suppression que j'ai une difficulté.
Voici le code utilisé :
Sub SupprimerD()
With Sheets("Inscriptions")
.Unprotect Password:="CES"
Dim Col, SupprimeLigne, i
Set Col = [Tableau12].ListObject.ListColumns(4).DataBodyRange
SupprimeLigne = InputBox("Veuillez entrer le nom, prénom à supprimer", "SUPPRESSION")
For i = 1 To Col.Rows.Count
If Col(i, 1) = SupprimeLigne Then [Tableau12].ListObject.ListRows(i).Delete: Exit For
Next
.Protect Password:="CES"
End With
End SubQuel code pour une boucle de 20 lignes qui doivent demeurer fixes ? Je joins le fichier mais enlevé les formulaires dans le bas pour la confidentialité.
Merci pour votre aide !
Ayant le sommeil léger, je fais des essais mais en vain. Le code à la suppression fonctionne bien cependant je n'arrive plus à inscrire dans la base. J'ai changé quelques petits trucs mais cela ne fonctionne pas. Le code d'inscription afin d'inscrire dans la base :
'Inscrire dans la source
Private Sub Boutoninscrire_Click()
Dim rcell As Range
Dim NbLig As Integer
With Sheets("Inscriptions")
.Activate
If .Range("Tableau12").Rows.Count > 19 Then
MsgBox "Tableau complet", vbOKOnly + vbInformation, "COMFIRMATION"
Unload Me
Exit Sub
End If
If Bassins = "" Or ChoixRLS = "" Or NUM = "" Or nomprenom = "" Or choixlangue = "" Or _
TextBox12 = "" Or datenaissance = "" Or typedemande = "" Or IntPivot = "" Or _
profilintervention = "" Or profilisosmaf = "" Or oemcdate = "" Then
MsgBox ("Tous les champs ne sont pas correctement remplis")
Exit Sub
End If
.Unprotect Password:="CES"
For NbLig = 1 To 2 ' Inscrire 2 fois la ligne
With .ListObjects("Tableau12")
If .InsertRowRange Is Nothing Then '...................................si le tableau comporte des données
Set rcell = .HeaderRowRange.Cells(1).Offset(.ListRows.Count + 1) '....1ère cellule vide (colonne 1 du tableau,nombre de lignes du tableau+1)
Else
Set rcell = .InsertRowRange.Cells(1) '................................1ère cellule colonne 1 du tableau
End If
End With
.Cells(rcell.Row, 2) = Bassins.Value
.Cells(rcell.Row, 3) = ChoixRLS
.Cells(rcell.Row, 4) = NUM
.Cells(rcell.Row, 5) = nomprenom
.Cells(rcell.Row, 6) = choixlangue
.Cells(rcell.Row, 7) = TextBox12
.Cells(rcell.Row, 8) = datenaissance
.Cells(rcell.Row, 9) = typedemande
.Cells(rcell.Row, 10) = IntPivot
.Cells(rcell.Row, 11) = profilintervention
.Cells(rcell.Row, 12) = profilisosmaf
.Cells(rcell.Row, 13) = Format(Me.oemcdate.Value, "YYYY/MM/DD")
Next NbLig
.Protect Password:="CES"
End With
MsgBox "Les informations ont été ajoutés à la base de donnée", vbOKOnly + vbInformation, "COMFIRMATION"
End SubMerci pour votre aide.
Bonjour à tous,
Personne pour m'indiquer la raison du pourquoi je n'arrive plus à inscrire dans ma base de donnée ? Le tableau fixe est nickel mais je ne peux plus inscrire d'usagers.
Merci pour votre aide !