Pb vba pour débutant en vba comme moi...
Résolu
erithi64
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
Iama Messages postés 319 Date d'inscription Statut Membre Dernière intervention -
Iama Messages postés 319 Date d'inscription Statut Membre Dernière intervention -
Bonsoir,
Débutant en VBA, vous ne manquerez pas de rire de mes lacunes..
Ma petite entreprise connaissant encore la crise j'essaie de développer une macro qui me permettrait de consolider l'ensemble des recettes quotidiennes dans un fichier temp à la suite des uns des autres.
En gros, il me faut rechercher les paiements par chq du lundi et les exporter dans le fichier temp puis rajouter à la suite et sur une même colonnes les chq du mardi et ainsi de suite. J'ai tenté d'écrire la macro suivante mais c'est un désastre...
Sub consolidation_hors_CA()
Dim Ws As Worksheet
Dim DerniereLigne As Integer
For Each Ws In ThisWorkbook.Worksheets
If Ws.Name = "temp""VLA1""VLA2""synthèse chq CA""synthese espece""prime""depot""peage+frais+salaire" Then
Else
DerniereLigne = Ws.Range("A65536").End(xlUp).Row
Ws.Range("A2:A" & DerniereLigne).Copy Sheets("temp").Range("A1:A6A5536").End(xlUp).Offset(1, 0)
End If
Next Ws
End Sub
Je souhaite ensuite obtenir un total de la semaine à la suite de la colonne unique puis découper les chqs déposés par série de 49 car ma banque n'autorise qu'un nombre cumulés de chq inférieur à 50!
Quelqu'un peut il m'aider?
Cdt
Débutant en VBA, vous ne manquerez pas de rire de mes lacunes..
Ma petite entreprise connaissant encore la crise j'essaie de développer une macro qui me permettrait de consolider l'ensemble des recettes quotidiennes dans un fichier temp à la suite des uns des autres.
En gros, il me faut rechercher les paiements par chq du lundi et les exporter dans le fichier temp puis rajouter à la suite et sur une même colonnes les chq du mardi et ainsi de suite. J'ai tenté d'écrire la macro suivante mais c'est un désastre...
Sub consolidation_hors_CA()
Dim Ws As Worksheet
Dim DerniereLigne As Integer
For Each Ws In ThisWorkbook.Worksheets
If Ws.Name = "temp""VLA1""VLA2""synthèse chq CA""synthese espece""prime""depot""peage+frais+salaire" Then
Else
DerniereLigne = Ws.Range("A65536").End(xlUp).Row
Ws.Range("A2:A" & DerniereLigne).Copy Sheets("temp").Range("A1:A6A5536").End(xlUp).Offset(1, 0)
End If
Next Ws
End Sub
Je souhaite ensuite obtenir un total de la semaine à la suite de la colonne unique puis découper les chqs déposés par série de 49 car ma banque n'autorise qu'un nombre cumulés de chq inférieur à 50!
Quelqu'un peut il m'aider?
Cdt
A voir également:
- Pb vba pour débutant en vba comme moi...
- Excel compter cellule couleur sans vba - Guide
- Logiciel de programmation pour débutant - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
14 réponses
bonsoir
VLA1 c'est une feuille?
Peux-tu nous faire parvenir un exemplaire de ton fichier, sans données confidentielles?
par
https://www.cjoint.com/
svp
cordialement
VLA1 c'est une feuille?
Peux-tu nous faire parvenir un exemplaire de ton fichier, sans données confidentielles?
par
https://www.cjoint.com/
svp
cordialement
Merci de votre prompte réponse.
Je vous joins le fichier comme demandé.
Tous les fichiers renommés sont des feuilles Excel.
Ce que je voudrais :
Copier les colonnes quotidiennes de la feuille synthèse Chèque vers la feuille temp en les mettant les uns a la suite des autres dans la colonne A et de faire la même pour la feuille synthèse chèque CA vers la colonne C de la feuille temp.
Merci de votre aide précieuse et restant à votre disposition
Cdt
https://www.cjoint.com/?3Icr363ml2p
Je vous joins le fichier comme demandé.
Tous les fichiers renommés sont des feuilles Excel.
Ce que je voudrais :
Copier les colonnes quotidiennes de la feuille synthèse Chèque vers la feuille temp en les mettant les uns a la suite des autres dans la colonne A et de faire la même pour la feuille synthèse chèque CA vers la colonne C de la feuille temp.
Merci de votre aide précieuse et restant à votre disposition
Cdt
https://www.cjoint.com/?3Icr363ml2p
bonjour erithi64
Ci-joint un premier jet.
https://www.cjoint.com/?DIdl40aSkdx
Quel sont exactement les "chèques" à regrouper par 49?
D'une ou des 2 colonne?
cordialement
Ci-joint un premier jet.
https://www.cjoint.com/?DIdl40aSkdx
Quel sont exactement les "chèques" à regrouper par 49?
D'une ou des 2 colonne?
cordialement
Bonjour
je viens d'effectuer une correction. Il y avais un problème dans le cas ou il y a pas de "chèques" sur une feuille. (Pour le regroupement de 49)
Ce qui doit d'ailleurs ne pas arrivé souvent avec "Ma petite entreprise connaissant encore la crise"
https://www.cjoint.com/?3IdocBEQGdt
cordialement
je viens d'effectuer une correction. Il y avais un problème dans le cas ou il y a pas de "chèques" sur une feuille. (Pour le regroupement de 49)
Ce qui doit d'ailleurs ne pas arrivé souvent avec "Ma petite entreprise connaissant encore la crise"
https://www.cjoint.com/?3IdocBEQGdt
cordialement
Tout d'abord 1000 fois merci pour l'écoute et l'aide.
En fait nous faisons des marchés quotidiens du lundi au samedi. Nous collectons dans chaque onglet marché (ex mardi 9h13 coop...) les chèques que nous avons reçu en comptabilisant à part ceux emis sur le crédit agricole.
Une fois tous les jours de marchés de la semaine renseignés, nous obtenons le les feuillets récapitulatifs synthèse chq hors Ca et synthèse chq CA. Ce que nous voulons c'est créer une macro qui à partir de synthèse chq hors CA copie dans "temp" A1 tous les chèques collectés de la semaine à la suite les uns des autres, jours après jour sans distinction de jour avec un total final , la même chose pour synthèse chèques CA copier de la mêm manière que les chèques hors Ca dans la case C du dossier temp.
Pourquoi 49 chèques? parce la banque n'accepte des remises cheques clients inférieures à 50, ce qui nous oblige à saucissonner nos dépots.
J'ai bien reçu tes fichiers mais j'ai une erreur 1004 la méthode "sheet' de l'objet global a échoué.
Merci de ton aide et du temps passé.
Cordialement
En fait nous faisons des marchés quotidiens du lundi au samedi. Nous collectons dans chaque onglet marché (ex mardi 9h13 coop...) les chèques que nous avons reçu en comptabilisant à part ceux emis sur le crédit agricole.
Une fois tous les jours de marchés de la semaine renseignés, nous obtenons le les feuillets récapitulatifs synthèse chq hors Ca et synthèse chq CA. Ce que nous voulons c'est créer une macro qui à partir de synthèse chq hors CA copie dans "temp" A1 tous les chèques collectés de la semaine à la suite les uns des autres, jours après jour sans distinction de jour avec un total final , la même chose pour synthèse chèques CA copier de la mêm manière que les chèques hors Ca dans la case C du dossier temp.
Pourquoi 49 chèques? parce la banque n'accepte des remises cheques clients inférieures à 50, ce qui nous oblige à saucissonner nos dépots.
J'ai bien reçu tes fichiers mais j'ai une erreur 1004 la méthode "sheet' de l'objet global a échoué.
Merci de ton aide et du temps passé.
Cordialement
Pourrais-tu me dire à quelle ligne ce message apparait, parce que je n'ai pas ce soucis.
D'après ton code tu recherchais les données dans toutes les feuilles portant un nom de semaine. Cela revient au même n'est pas, que partir des synthèses?
J'ai fait une petite macro qui met une cellule vide tout les 49 lignes
D'après ton code tu recherchais les données dans toutes les feuilles portant un nom de semaine. Cela revient au même n'est pas, que partir des synthèses?
J'ai fait une petite macro qui met une cellule vide tout les 49 lignes
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir,
Ca marche nickel. en effet cela revient au même de partir des jours de la semaine ou de la synthèse chq hors CA et synthèse chq CA même si pour nos développements futurs nous préferons en fait partir des synthèses. Nous allons essayer de bidouiller cela pour ne pas t'embeter une fois de plus sans bousiller ton magnifique travail. si tu viens dans le sud est tu gagneras un panier garni gratuit bio! Merci de ton aide en tout cas.
Cordialement
Ca marche nickel. en effet cela revient au même de partir des jours de la semaine ou de la synthèse chq hors CA et synthèse chq CA même si pour nos développements futurs nous préferons en fait partir des synthèses. Nous allons essayer de bidouiller cela pour ne pas t'embeter une fois de plus sans bousiller ton magnifique travail. si tu viens dans le sud est tu gagneras un panier garni gratuit bio! Merci de ton aide en tout cas.
Cordialement
Bonjour
Pour le sud et le panier, je note. J'ai une soeur plus au sud que moi, lorsque j'irai la visiter...
Sub paquet_49()
Dim ligDestCK As Long, ligDestCA As Long, ligFin As Long
Dim nP As Double, i As Byte
Const Nb As Byte = 49
Const Dest As String = "temp" 'Nom de la feuille de destination
Worksheets(Dest).Select
ligDestCK = Worksheets(Dest).Cells(1, 1).End(xlDown).Row
nP = ligDestCK / Nb
nP = Application.WorksheetFunction.RoundDown(nP, 0)
Dim sAut As Byte
Cells(1, 1).Select
For i = 1 To nP
sAut = IIf(i = 1, Nb, Nb + 1)
Selection.Offset(sAut, 0).Activate
Selection.Insert Shift:=xlDown
Selection.Interior.Pattern = xlNone
Next i
Cells(1, 1).Select
End Sub
Pour le sud et le panier, je note. J'ai une soeur plus au sud que moi, lorsque j'irai la visiter...
Sub paquet_49()
Dim ligDestCK As Long, ligDestCA As Long, ligFin As Long
Dim nP As Double, i As Byte
Const Nb As Byte = 49
Const Dest As String = "temp" 'Nom de la feuille de destination
Worksheets(Dest).Select
ligDestCK = Worksheets(Dest).Cells(1, 1).End(xlDown).Row
nP = ligDestCK / Nb
nP = Application.WorksheetFunction.RoundDown(nP, 0)
Dim sAut As Byte
Cells(1, 1).Select
For i = 1 To nP
sAut = IIf(i = 1, Nb, Nb + 1)
Selection.Offset(sAut, 0).Activate
Selection.Insert Shift:=xlDown
Selection.Interior.Pattern = xlNone
Next i
Cells(1, 1).Select
End Sub
Tu seras toujours le ou la bienvenu(e) car dans la famille nous tenons toujours nos engagements.
Merci de ton aide et de ton temps passé.Si seulement tout pouvait se passer ainsi dans ce monde de dingues.... ce serait plus simple pour tout le monde.
PS: Qu'est ce que la macro ci dessous ton message. Pardon pour la question mais je suis toujours aussi nul en VBA....
Cordialement
Merci de ton aide et de ton temps passé.Si seulement tout pouvait se passer ainsi dans ce monde de dingues.... ce serait plus simple pour tout le monde.
PS: Qu'est ce que la macro ci dessous ton message. Pardon pour la question mais je suis toujours aussi nul en VBA....
Cordialement
Lama, bonjour et désolé de te déranger encore.
J'ai fait ce petit fichier Excel qui sera relié à une base Access en construction.
https://mon-partage.fr/f/ndQnN8LT/
J'aurais besoin de 3 macros que je n'arrive pas à écrire.
La première pour les onglets "Légumes" et "fruits" qui permettrait de faire un tri par ordre alphabétique à partir des 2 colonnes " Produits".
La seconde toujours à partir des onglets pré-cités me permettra de coller dans les onglets Access_légumes et Access_fruits la liste des produits à la suite des uns des autres pour mise à jour automatique de ma base Access.
La troisième enfin me permettra d'exporter dans 2 nouveaux onglets la liste des légumes et fruits dont le prix n'est pas à 0 (donc en vente sur le marché) sur 2 colonnes selon la même mise en forme des onglets Légumes et fruits initiaux. Ce panneau nous permettra d'afficher tout nos produits sur le marché.
Merci encore de ton aide si tu le peux et le veux.
Cordialement
J'ai fait ce petit fichier Excel qui sera relié à une base Access en construction.
https://mon-partage.fr/f/ndQnN8LT/
J'aurais besoin de 3 macros que je n'arrive pas à écrire.
La première pour les onglets "Légumes" et "fruits" qui permettrait de faire un tri par ordre alphabétique à partir des 2 colonnes " Produits".
La seconde toujours à partir des onglets pré-cités me permettra de coller dans les onglets Access_légumes et Access_fruits la liste des produits à la suite des uns des autres pour mise à jour automatique de ma base Access.
La troisième enfin me permettra d'exporter dans 2 nouveaux onglets la liste des légumes et fruits dont le prix n'est pas à 0 (donc en vente sur le marché) sur 2 colonnes selon la même mise en forme des onglets Légumes et fruits initiaux. Ce panneau nous permettra d'afficher tout nos produits sur le marché.
Merci encore de ton aide si tu le peux et le veux.
Cordialement
Bonsoir et merci de ta réponse.
C'est malheureusement un impératif car nous nous servons de cette feuille pour vérifier nos prix et ce format de fichier et cette mise en page correspondent à un souci d'impression.
Cordialement
C'est malheureusement un impératif car nous nous servons de cette feuille pour vérifier nos prix et ce format de fichier et cette mise en page correspondent à un souci d'impression.
Cordialement
bonjour erithi64
Ci-joint un premier jet.
https://www.cjoint.com/?0ImvHCR5hHy
Je me suis trompé de version tout à l'heure
A+
Ci-joint un premier jet.
https://www.cjoint.com/?0ImvHCR5hHy
Je me suis trompé de version tout à l'heure
A+
Bonsoir Lama
Merci encore de ton aide. Ci joint fichier avec remarques derriere les tiennes.
autre chose, j'ai une formation de juriste et de financier, si tu as besoin d'un quelconque renseignement dans ces domaines, je serai tjs là pour t'aider.
cordialement
https://www.cjoint.com/?3Imw0iZ8hva
Merci encore de ton aide. Ci joint fichier avec remarques derriere les tiennes.
autre chose, j'ai une formation de juriste et de financier, si tu as besoin d'un quelconque renseignement dans ces domaines, je serai tjs là pour t'aider.
cordialement
https://www.cjoint.com/?3Imw0iZ8hva
Tu as récupéré mon premier fichier, prend le N2
https://www.cjoint.com/?0ImvHCR5hHy
Je regarde tes remarques
A+
https://www.cjoint.com/?0ImvHCR5hHy
Je regarde tes remarques
A+
Bonsoir
Je t'envoie mon dernier fichier excel. Peux tu me dire si tu as 2 petites minutes ce qui peut bien bloquer dans le formulaire excel que j'ai fait et me dire pourquoi il n'est pas lié à ma feuille de calcul clts_Marseille.
Merci encore une fois de ton aide précieuse.
Cordialement
https://mon-partage.fr/f/mgw8XuI3/
Je t'envoie mon dernier fichier excel. Peux tu me dire si tu as 2 petites minutes ce qui peut bien bloquer dans le formulaire excel que j'ai fait et me dire pourquoi il n'est pas lié à ma feuille de calcul clts_Marseille.
Merci encore une fois de ton aide précieuse.
Cordialement
https://mon-partage.fr/f/mgw8XuI3/
Bonjour
Je viens de regarder rapidement, donc rapidement quelques remarques.
Dans Sub MAJ_Clients_Marseille(),Tu n'active pas une feuille particulière.
Soit tu précise la feuille, soit tu l'associe à un bouton sur la feuille.
Pour ton userform:
1) Il ne faut pas utiliser son nom dans,"Private Sub UserForm1_Initialize()".
=>Private Sub UserForm_Initialize()
2) En fin de cette sub, tu veux rendre visible 4 texbox, il n'y en a que 3.
(Note:Est-ce utile ?elles sont déjà visible)
Je regarde un peu plus longent plus tard.
Pourrais-tu ouvrir un autre sujet?
cordialement
Je viens de regarder rapidement, donc rapidement quelques remarques.
Dans Sub MAJ_Clients_Marseille(),Tu n'active pas une feuille particulière.
Soit tu précise la feuille, soit tu l'associe à un bouton sur la feuille.
Pour ton userform:
1) Il ne faut pas utiliser son nom dans,"Private Sub UserForm1_Initialize()".
=>Private Sub UserForm_Initialize()
2) En fin de cette sub, tu veux rendre visible 4 texbox, il n'y en a que 3.
(Note:Est-ce utile ?elles sont déjà visible)
Je regarde un peu plus longent plus tard.
Pourrais-tu ouvrir un autre sujet?
cordialement
Merci de ton aide Lama.
Je bloque vraiment. Mon formulaire fonctionne correstement mais aune incidence sur ma feuille excel.
Cordialement
Je bloque vraiment. Mon formulaire fonctionne correstement mais aune incidence sur ma feuille excel.
Cordialement
Bonjour erithi64
C'est encore un problème de noms qui ne correspondent pas aux sub.
Autrement ton code marche.
Je te conseil:
- De changer les noms des contrôles, se qui rend le code plus lisible.
(Pense aux modifications ultérieures.)
- D'utiliser le mode "pas à pas"(F8) pour faire fonctionner ta macro, Cela t'aurais certainement mis sur la piste du problème.
https://www.cjoint.com/c/DIzsaDF5U2I
Cordialement
C'est encore un problème de noms qui ne correspondent pas aux sub.
Autrement ton code marche.
Je te conseil:
- De changer les noms des contrôles, se qui rend le code plus lisible.
(Pense aux modifications ultérieures.)
- D'utiliser le mode "pas à pas"(F8) pour faire fonctionner ta macro, Cela t'aurais certainement mis sur la piste du problème.
https://www.cjoint.com/c/DIzsaDF5U2I
Cordialement