Envoyer une donnée dans une colonne spécifique

simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   -  
M-12 Messages postés 1332 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

j'ai un formulaire dans lequel j'ai une liste déroulante reprenant plusieurs activités.

Je voudrais que les montants repris dans ce formulaire soient envoyés dans la colonne correspondant à l'activité choisie dans la liste déroulante.

Je suis perdu pour faire mon récapitulatif.

A voir également:

16 réponses

M-12 Messages postés 1332 Date d'inscription   Statut Membre Dernière intervention   285
 

Bonjour,

Regarde ce petit exemple

https://www.cjoint.com/c/LLmd5g1u0uJ

0
simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   35
 

Bonjour, SUPER ! c'est exactement ce que je cherchais.

Mais en regardant dans le développeur, je ne vois pas ton code, excepté pour l'affichage de l'Userform.

Or je voudrais me baser sur ton exemple, mais en y ajoutant quelques lignes tel par exemple de passer à la ligne suivante à chaque entrée, ajouter un bouton pour enregistrer etc.

En principe... ça, je sais faire, mais il faudrait que je uisse l'ajouter dans ton code.

Merci beaucoup.

0
M-12 Messages postés 1332 Date d'inscription   Statut Membre Dernière intervention   285
 

Re,

le code se trouve dans l'userform

Option Explicit
  'déclaration des variables
  Dim Col As Integer, DernCol As Integer, DernLig As Integer
  
Private Sub CommandButton1_Click()
  For Col = 1 To DernCol
    If ComboBox1.Value = Cells(1, Col) Then
      DernLig = Cells(Rows.Count, Col).End(xlUp).Row + 1
      Cells(DernLig, Col) = Me.TextBox1.Value
    End If
  Next Col
  Me.ComboBox1 = ""
  Me.TextBox1 = ""
  Me.ComboBox1.SetFocus
End Sub

Private Sub UserForm_Initialize()
  'on attribue à "DernLig" le numéro de la dernière cellule non vide ligne 1
  DernCol = Cells(1, Columns.Count).End(xlToLeft).Column
  'on boucle de la colonne A  à la dernière colonne
    For Col = 1 To DernCol
      ComboBox1.AddItem Cells(1, Col)
    Next Col
End Sub
0
simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   35
 

Merci beaucoup. je vais essayer de mettre cela en ordre pour mon formulaire. je devrais y arriver !

Grand merci pour ton aide, je n'arrivais pas à trouver le code et je ne savais pas qu'il était dans l'USF. Je ne suis pas un grand spécialiste de VBA, je l'ai étudié il ya ... déjà longtemps et je m'y remet car j'aime ça.

Bonne soirée à toi.

0

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

Posez votre question
simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   35
 

je viens de faire l'essai, et c'est exactement ce qu'il me faut. Mais, je dois ajouter une colonne qui reprendra le motif de la rentrée ou de la dépense et je dois avoir cela sur la même ligne que le montant. Pas de problème pour ajouter une cellule dans l'Userform, mais tu vas à la ligne uniquement si la colonne en question est occupée à la dernière ligne, moi je voudrais aller à la ligne à chaque inscription afin que mon "motif de dépense" se trouve sur la même ligne.

Je vais voir si je sais le faire, sinon, si tu pouvais me faire ce changement ...

Merci

0
simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   35
 

je te joins le lien vers le fichier que j'avais préparé :

https://www.cjoint.com/c/LLmtupzr51n

ici il n'y a rien de VBA, j'ai simplement inscrit des chiffres afin de voir si cela fonctionne. c'est à ce moment que je voulais automatiser par l'envoi d'un formulaire vers ma feuille "récap".

Comme tu peux le voir, dans chaque activité, j'ai des rentrées et des sorties.

Donc ton fichier m'envoie bien vers les bonnes colonnes, et je pense que en le recopiant une seconde fois pour les montants dépenses, il fera la même chose pour la colonne dépenses.

merci de ton aide.

ceci est pour une association qui doit gérer ses comptes mais pas de façon comptable, uniquement justifier les recettes et les dépenses.

bonne soirée

0
simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   35
 

Bonjour,

j'ai transformé mon formulaire Excel en Userform, avec les mêmes données, mais je n'arrive pas...

comment faire la même chose que ma liste déroulante ?

Sinon, j'ai conçu mon USF et ai donné les noms etc.

Merci de votre aide

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Bonjour à tous,

Pouvez vous mettre votre fichier complet avec le VBA pour voir comment vous avez fait l'UF et le code

0
simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   35
 

Bonjour f894009,

merci d'accepter de m'aider.

voici le fichier que j'ai commencé. Comme je le disais, j'ai fait un Userform avec l'intention de remplacer le formulaire Excel (qui devrait disparaitre par la suite) mais je n'ai encore rien mis en VBA car j'aimerais me baser sur le fichier de M-12 et l'adapter à mon problème. Mais je n'ai pas pu m'y tenir aujourd'hui. Je vais encore essayer un peu d'avancer demain, mais mes connaissances ne sont plus suffisantes , cela fait plus de 15 ans que j'ai étudié le VBA ... je pratique toujours Excel pour ainsi dire journellement, je fais de petites choses en VBA, mais ici, je suis un peu perdu;

Merci de votre aide

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Bonjour,

voici le fichier que j'ai commencé. 

Certes,certes, en encre invisible peut-etre!

0
SimKmil
 

Bonjour,

évidemment, si je ne joins pas le fichier, ce sera plus difficile à lire !!

le voici : 

https://www.cjoint.com/c/LLptMVGpc4n

je dois dire aussi que depuis hier, je n'ai rien tenté de faire sur ce fichier, je n'ai pas eu le temps (normal, je suis à la retraite ...)

merci de votre aide

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Bonjour,

normal, je suis à la retraite ...

En effet, personne ne peut imaginer le temps qu'il faut pour ne rien faire. Je suis aussi dans ce cas, j'en suis au bord du "Burnes Out" tellement c'est prenant et surtout épuisant 

0
M-12 Messages postés 1332 Date d'inscription   Statut Membre Dernière intervention   285
 

Bonjour,

A tester avec quelques modifs.

https://www.cjoint.com/c/LLqgAoo3yiJ

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 

Bonjour,

Perso, manque la date d'enregistrement.

SimKmil

A quoi sert la liste des Activites feuille Bordereau?

0
simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   35
 

Bonjour, cette feuille devait servir à entrer les données, mais je la remplace par un user Forem, dans lequel je ne sais pas comment faire une liste déroulante .

si mon Usf fonctionne, je supprimerai la feuille Bordereau.

merci et excellente journee

0
simkmil Messages postés 481 Date d'inscription   Statut Membre Dernière intervention   35
 

Bonjour,

Cher M-12, je viens d'essayer et c'est formidable, c'est exactement ce que je cherchais.

Seul petit Bémol, lorsque j'ai débuté, le premier portait le n° 1, et ensuite j'ai eu 24 lignes vides avec le n° 2 !

Ma feuille "Bordereau" ne me sert plus puisque tu m'a fais un USF, mais je n'ose la supprimer car je suppose que c'est là que tu vas chercher les noms des différentes activités ?

Quoique, en regardant le code, je pense plutôt que tu prends les nopms des activités sur la première ligne du récapitulatif.

Donc, je vais faire l'essai : d'abord une copie de sauvegarde, ensuite je supprime la feuille "Bordereau" et si ça fonctionne toujours c'est que c'est bon !

Je viens de vider les lignes "2" inutiles et cela continue à fonctionner.

Je te remercie de m'avoir aidé; il y a une fonction que je ne connais pas et que  je ne comprends pas : if me.OpbRecette.value , peux tu me dire ce que cela représente ?

Merci beaucoup, je trouve ce site super, ce n'est pas la première fois que je fais appel à CCM pour m'aider dans mes problèmes VBA, dont je ne connais pas/plus suffisemment, mais que j'aime utiliser vu que c'est très pratique.

Encore merci et @+

0
M-12 Messages postés 1332 Date d'inscription   Statut Membre Dernière intervention   285
 

Re,

OpbRecette.value correspond au nom du bouton Option Recette, si il est validé (donc=true) le montant se place en Recette, si il est à False, c'est que l'est le bouton OptDepense qui est à True et le montant và dans Dépenses

Après, je voyais pas l'utilité des faire autant de tableau structuré, cela ne sert à rien, sinon qu'à alourdir le fichier. Je les avais donc modifiés en Plage. Et si tu te retrouves avec  la le N° 2 en ligne 24, cela vient de tes Tableaux qui doivent avoir 24 lignes

0