Envoyer une donnée dans une colonne spécifique

Fermé
simkmil Messages postés 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 - 11 déc. 2022 à 21:03
M-12 Messages postés 1333 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 - 16 déc. 2022 à 17:42

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 1333 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 299
12 déc. 2022 à 04:57

Bonjour,

Regarde ce petit exemple

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

0
simkmil Messages postés 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 34
12 déc. 2022 à 17:42

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 1333 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 299
12 déc. 2022 à 19:43

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 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 34
12 déc. 2022 à 20:05

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 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 34
12 déc. 2022 à 20:11

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 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 34
12 déc. 2022 à 20:26

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 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 34
14 déc. 2022 à 11:45

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 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
14 déc. 2022 à 18:25

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 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 34
14 déc. 2022 à 20:40

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 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
15 déc. 2022 à 08:59

Bonjour,

voici le fichier que j'ai commencé. 

Certes,certes, en encre invisible peut-etre!

0

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 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
16 déc. 2022 à 07:03

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 1333 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 299
Modifié le 16 déc. 2022 à 07:26

Bonjour,

A tester avec quelques modifs.

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

0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
Modifié le 16 déc. 2022 à 10:04

Bonjour,

Perso, manque la date d'enregistrement.

SimKmil

A quoi sert la liste des Activites feuille Bordereau?

0
simkmil Messages postés 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 34
16 déc. 2022 à 12:56

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 434 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 13 mars 2024 34
16 déc. 2022 à 17:16

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 1333 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 299
Modifié le 16 déc. 2022 à 17:45

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