Problème de transfert de données de saisie userform

Otantik972 Messages postés 23 Date d'inscription vendredi 1 juillet 2011 Statut Membre Dernière intervention 3 août 2011 - 3 août 2011 à 11:51
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 3 août 2011 à 16:39
Bonjour,
j'ai éffectué pas mal de recherche sur le net par rapport à la finalisation de mon projet de programmation d'intervention sur les routes en eure-et-loir.

Seul ic à chaque saisie la saisie précédente se fait écrasé au lieu de s'intégrer dans la prochaine ligne vide à partir de la colonne C.

Que faire ? Voici mon code

Private Sub CommandButton2_Click()ActiveSheet.Unprotect ("Programme")


' Si l'userform vient d'être ouvert la ligne ci-après considère que la commande' Validation a été cliqué par erreur If Left(ComboBox22, 8) = "Veuillez" Then Exit Sub
On Error Resume Next
' La ligne ci-dessous évite de répéter Worksheets("fichier")
With Worksheets("Programme")
' mise en forme des cellules car j'ai remarqué que si cette feuille
' fin de la mise en forme et on ferme la fonction de départ With Worksheets("fichier")End With

' Et on revient sur la page d'accueilSheets("fichier").Select
MsgBox "Transfert terminé...Réinitialisation..."
' les textbox sont réinitialisées
Dim ctl As Control

For Each ctl In UF2.Controls
Select Case TypeName(ctl)
Case "Textbox", "Combobox":
ctl.Value = ""
End Select
Next ctl
If UserForm1.OptionButton1.Value = True Then
Range("C17").End(xlDown).SelectActiveCell.Offset(1, 0).Activate

Range("Programme!C17" & i).Value = TextBox1.Value
Range("Programme!E17" & i).Value = TextBox2.Value
Range("Programme!F17" & i).Value = TextBox3.Value
Range("Programme!G17" & i).Value = TextBox27.Value
Range("Programme!J17" & i).Value = ComboBox6.Value
Range("Programme!K17" & i).Value = TextBox5.Value
Range("Programme!L17" & i).Value = TextBox6.Value
Range("Programme!I17" & i).Value = TextBox13.Value
Range("Programme!N17" & i).Value = TextBox7.Value
Range("Programme!H17" & i).Value = TextBox28.Value
Range("Programme!M17" & i).Value = TextBox14.Value
Range("Programme!D17" & i).Value = ComboBox22.Value
Range("Programme!O17" & i).Value = TextBox8.Value
Range("Programme!P17" & i).Value = TextBox9.Value
Range("Programme!R17" & i).Value = TextBox24.Value
Range("Programme!S17" & i).Value = TextBox25.Value
Range("Programme!T17" & i).Value = TextBox26.Value
Range("Programme!V17" & i).Value = ComboBox20.Value
Range("Programme!W17" & i).Value = ComboBox21.Value
Range("Programme!Q17" & i).Value = TextBox29.Value
Range("Programme!C1").Value = ComboBox1.Value
Range("Programme!D4").Value = ComboBox16.Value


End If

Merci d'avance

Informatisez pour être moderne et suivre les futurs générations humaines !!!

7 réponses

lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
3 août 2011 à 14:14
Bonjour,

A quoi est initialisée ta variable "i" dans les ligne :
Range("Programme!C17" & i......
En + je ne suis pas expert VBA, mais je doute fortement que la formulation soit correctement "C17" & i soit correcte.

PS : arrêtes d'ouvir des sujets récurrents pour le même problème alors que des membres essayent de t'aider sur tes autres topics, un petit up suffit à la limite..

L'expérience, c'est une connerie par jour, mais jamais la même..
0
Otantik972 Messages postés 23 Date d'inscription vendredi 1 juillet 2011 Statut Membre Dernière intervention 3 août 2011
3 août 2011 à 14:20
benh justement pour la variable i j'ai tenté pas mal de formule mais sans résultat.

i = Worksheets("Programme").Range("C65536").End(xlUp).Row + 1

Quand je met cette valeur pour i, elle est envoyée en ligne 1767.


Informatisez pour être moderne et suivre les futurs générations humaines !!!
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
3 août 2011 à 14:59
Bonjour,

Regardes la fonction Offset des Range, tu auras toutes les infos dont tu as besoin.
Range("A1").Offset(...)

Sinon, un simple Do/Loop pour trouver la première case vide ne fonctionne pas ?

---------------------------------------------------------------------
[list][*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu, pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Otantik972 Messages postés 23 Date d'inscription vendredi 1 juillet 2011 Statut Membre Dernière intervention 3 août 2011
3 août 2011 à 15:34
J'ai essayé aussi le Do/Loop et cela ne fonctionne guère.

Je peut t'envoyer le fichier ?


Informatisez pour être moderne et suivre les futurs générations humaines !!!
0

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

Posez votre question
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
3 août 2011 à 16:18
Bonjour,

Avec quel code tu as testé ?
Et quand tu dis que "ça ne fonctionne pas", ça veut dire quoi ?

---------------------------------------------------------------------
[list][*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu, pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Otantik972 Messages postés 23 Date d'inscription vendredi 1 juillet 2011 Statut Membre Dernière intervention 3 août 2011
3 août 2011 à 16:25
Benh que ça renvoi à des centaines de cases plus loin.


Informatisez pour être moderne et suivre les futurs générations humaines !!!
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
3 août 2011 à 16:39
Bonjour,

Quel code tu as testé ?
C'est important pour comprendre.

ça veut peut être dire que les cases ne sont pas vides mais contiennes des données non affichées.

---------------------------------------------------------------------
[list][*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu, pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Rejoignez-nous