Pb sur un formulaire

zazasig -  
pilas31 Messages postés 1878 Statut Contributeur -
Bonjour,
J'essaie de créer un formulaire pour remplir une base de donnée dans une feuille excel

Dans un fichier, j'ai créé un onglet base de donnees, un onglet formulaire, un onglet choix.
Dans l'onglet base de données, j'ai créé 5 colonnes.
Dans l'onglet formulaire, j'ai copier coller en transposant les intitulés des colonnes de l'onglet base de données.
Dans l'onglet choix j'ai défini des données (liste dansla colonne A de la base de données)

dans VB (1ère utilisation), j'ai écris :

Sub transpose_dans_tableau()
'Atteindre le formulaire et mémoriser les données
Sheets("formulaire").Select
Range("B4:B11").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
'Mémoriser le n° de la ligne où coller les données
ligne_active_base = ActiveCell.Row
'Collage avec transposition
Range("A" & ligne_active_base).Select
Selection.PasteSpecial Paste:=xlPasteAllExceptBorders, Operation:=x1None, SkipBlanks:=False, Transpose:=True
'Rendre vierge le formulaire
Sheets("formulaire").Select
Range("B4:B11").Select
Selection.ClearContents
Range("B4").Select
'Retourner dans le tableau
Sheets("base de données").Select
Range("A2").Select
End Sub

erreur d'application 1004.
Quelqu'un peut-il m'aider svp ?
Merci par avance

5 réponses

pilas31 Messages postés 1878 Statut Contributeur 647
 
Bonjour,

J'ai l'impression que cette erreur est récurrente, je l'ai déjà vue plusieurs fois sur le forum. J'ai déjà proposé une écriture différente et en cherchent je viens de voir que gbinforme aussi avant moi. Mais je viens (enfin) de voir l'erreur.

Elle est ici :

Operation:=x1None

il faut écrire :

Operation:=xlNone

A+
0
zazasig
 
Bonjour

Merci pour cette correction mais l'erreur apparaît dès la ligne suivante

Else
Range("A1").Select
Selection.End(x1Down).Select
ligne_active_base = ActiveCell.Row
Range("A" & ligne_active_base + 1).Select

Connaissez-vous une façon plus simple de faire un formulaire avec excel ? J'ai en face de moi des utilisateurs qui ne connaisse pas du tout la bureautique et je voulais leur faire un outil simple à utiliser sans risque d'effacement des données. et comme moi-même je ne maîtrise pas plus que cela...

Merci
isabelle
0
pilas31 Messages postés 1878 Statut Contributeur 647
 
Bonjour,

Mais non ce n'est pas x1Down le chiffre 1 mais c'est xlDown la lettre L

Donc ce formulaire doit fonctionner...

A+
0
zazasig
 
ok
j'ai donc mis un l mais j'ai toujours l'erreur (erreur 400 lorsque je soumets le formulaire).
je vais faire autrement.

bonne journée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pilas31 Messages postés 1878 Statut Contributeur 647
 
Bon voila ma proposition,

En enlevant les données trop confidentielles, déposer le fichier sur www.ci-joint.fr et coller le lien dans un post.
Ainsi nous pourrons voir ce qui se passe et corriger plus efficacement, voire faire des propositions pour améliorer le fonctionnement.

0