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

Création Base données

loutredijon

XLDnaute Nouveau
Bonsoir à tous,
j'ai créé une macro pour faire une base donnée. Je m'explique, j'ai un formulaire dans une feuille que je rempli, je clic sur le bouton de la macro et elle écrit les données dans la feuille base de données. jusque là tous va bien mais lorsque je tape de nouvelle données dans le formulaire celui ci me la transpose dans la ligne 22 de la feuille base de données et a chaque saisie il m'efface les données d'avant.
je vous joint le fichier ainsi que la macro.
Merci par avance.

Sub transpose_dans_tableau()
'Atteindre le formulaire et mémoriser les données
Sheets("Formulaire").Select
Range("B1:B5").Select
Selection.Copy
'Test pour déterminer la ligne où coller les infos dans le tableau
Sheets("Base de données").Select
valeurA2 = Range("A2").Value
If valeurA2 = "" Then
Range("A2").Select
Else
Range("A1").Select
Selection.End(xlDown).Select
Ligne_active_base = ActiveCell.Row
Range("A" & Ligne_active_base + 1).Select
End If
'Collage avec transposition
Range("A2" & Ligne_active_base).Select
Selection.PasteSpecial Paste:=xlPasteAllExceptBorders, _
operation:=xlNone, skipblanks:=False, transpose:=True
'Rendre vierge le formulaire
Sheets("Formulaire").Select
Range("B1:B5").Select
Selection.ClearContents
Range("B1").Select
'Retourner dans le tableau
Sheets("Base de données").Select
Range("A1").Select
End Sub
 

Pièces jointes

  • Classeur1.xls
    25.5 KB · Affichages: 84
  • Classeur1.xls
    25.5 KB · Affichages: 83
  • Classeur1.xls
    25.5 KB · Affichages: 88

BERRACHED said

XLDnaute Accro
Re : Création Base données

Salut,loutredijon

j'ai branché ton bouton sur un autre macro que j'ai fait avec l'enregistreur
j'espere te conviendra

Cordialement
 

Pièces jointes

  • Copie de Clas_Formul.xls
    32.5 KB · Affichages: 117

loutredijon

XLDnaute Nouveau
Re : Création Base données

Bonsoir,
je te remercie de ton aide j'ai cherchée plus en profondeur dans le forum et j'ai trouvé la solution que je communique:
Dim cel As Range, plagemenu As Integer

Sub transpose_dans_tableau()
plagemenu = Feuil1.Range("A65536").End(xlUp).Row + 1
With Feuil1
.Cells(plagemenu, 1) = Feuil2.Range("B1")
.Cells(plagemenu, 2) = Feuil2.Range("B2")
.Cells(plagemenu, 3) = Feuil2.Range("B3")
.Cells(plagemenu, 4) = Feuil2.Range("B4")
.Cells(plagemenu, 5) = Feuil2.Range("B5")
End With
'Rendre vierge le formulaire
Sheets("Formulaire").Select
Range("B1:B5").Select
Selection.ClearContents
Range("B1").Select
'Retourner dans le tableau
Sheets("Formulaire").Select
Range("A1").Select
End Sub

Bonne soirée et merci à toi
BERRACHED said
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…