Macro permettant de recopier des données avec condition

Bonjour à tous,

Depuis hier je me suis attaqué à un dossier qu'une stagiaire dans mon entreprise avait commencé et qui pourrait être très utile si j'arrive à l'automatiser et surtout à le faire fonctionner .. Je risque de faire plusieurs fois appel à vous pour m'aider à l'améliorer

Mais pour l'instant svp gardez en tête qu'il y a énormément d'erreur à corriger donc ne faites pas de gros yeux en voyant certaines données

Donc voilà mon problème aujourd'hui : à partir de l'onglet BS qui est rempli avec les autres onglets mais est défini par "Sélection" dans lequel j'inscris le salarié et le mois, que les charges sociales et patronales viennent s'inscrire dans les onglets respectif "Salariale" et "Patronale" après que j'ai appuyer sur un bouton ou autre depuis l'onglet "BS" pour que je puisse le regarder avant de valider et l'inscrire dans mes onglets répertoriant les charges

J'ai moi même du mal à écrire ce que je veux vraiment alors j'espère que vous comprendrez ma requête

Merci d'avance à tout ceux qui prendront le temps de regarder si une solution à mon problème est possible

39test-salaire.xlsm (215.57 Ko)

Bonjour

après que j'ai appuyer sur un bouton ou autre depuis l'onglet "BS"

Je vois un bouton Enregistrer. S'agit-il de celui là ?

que les charges sociales et patronales viennent s'inscrire dans les onglets respectif "Salariale" et "Patronale"

Donnez moi un exemple concret que je puisse voir sur votre fichier

Bonjour Dan,

Pour le bouton non pas spécialement le bouton enregistrer, en créer un autre n'est pas dérangeant du tout

Donnez moi un exemple concret que je puisse voir sur votre fichier

Je ne sais pas comment expliquer autrement.

Ce que je voudrais serait qu'un fois que j'ai fait le bulletin de salaire d'un des salariés, les éléments du bulletin qui sont des charges salariales viennent s'inscrire dans l'onglet "salariale" dans les colonnes qui correspondent au salarié pour lequel je viens de faire le bulletin (idem pour l'onglet "patronale") mais que ces données restent inscrite une fois que je fais le salaire d'un autre employé donc une fonction recherche ne serait pas possible ..

Je n'ai pas l'impression d'être claire dans mes explications ... Mais je n'ai pas d'exemple à montrer

Feuille Salariale : Quelles sont les cellules depuis BS qui doivent aller dans cette feuille. Actuellement je ne vois que la cellule I16 pour le salarié Pascal qui devrait aller dans O12 en feuille Salariale. Juste ou y a-t-il d'autres cellules ?

Feuille Patronale : les infos arrive par formule non ?

Eh bien techniquement ce ne sont pas les charges qui seront à dupliquer puisque ça peut le faire par formule..

Mais pour que ces formules puissent donner le même résultat que celui que je retrouve sur le BS il faudrait que tout ce qui influence la base des cotisations (les H. supp / retenues et indemnités d'absence / primes ou tout autre chose qui pourrait être sur le bulletin) puisse être reporté depuis le bulletin dans les lignes qui y correspondent

Heu....Désolé je ne comprends rien du tout là et ce que vous cherchez. Cela ne réponds pas à la question de mon post précédent

Mais pour que ces formules puissent donner le même résultat que celui que je retrouve sur le BS

Vous parlez de quelle feuille ?

Eh bien toutes les infos sont inscrites dans les bulletins de salaire il faut "juste" que ce dont je vous parlais juste avant puisse s'inscrire dans les onglet salariale et patronale ..

Si vous ne comprenez pas ce n'est pas grave, je ne veux pas déranger plus que ça

Eh bien toutes les infos sont inscrites dans les bulletins de salaire il faut "juste" que ce dont je vous parlais juste avant puisse s'inscrire dans les onglet salariale et patronale ..

Je reviens donc à mon post de 13h00 "Feuille salariale.....I16....."
Donc la valeur des cellules de la colonne I sont à placer en colonne O en feuille salariale
Pour la feuille Patronale, les infos viennent de la feuille Salariale par formule

Si vous ne comprenez pas ce n'est pas grave, je ne veux pas déranger plus que ça

Vous ne me dérangez pas sinon je n'aurais pas répondu à votre demande. Mais avec un minimum d'explications sur la manière dont vous fonctionnez, cela aidera

Pour la feuille patronale, je suis d'accord des formules feront l'affaire !

Donc la valeur des cellules de la colonne I sont à placer en colonne O en feuille salariale

Dans le cas de Pascal oui c'est exactement ça mais ce qui me pose problème c'est de faire en sorte que les colonnes s'adaptent en fonction du salarié ..

OK.

Pour la feuille patronale, je suis d'accord des formules feront l'affaire !

Elles sont déjà en place dans votre fichier si je ne me trompe.

Dans le cas de Pascal oui c'est exactement ça mais ce qui me pose problème c'est de faire en sorte que les colonnes s'adaptent en fonction du salarié ..

Idéalement il faudrait que la désignation des données placées en colonne C16 à C24 de la feuille BS soient identiques à celles de C12 à C20 en feuille salariale.

Exemple : C12 à C14 correspond aux données C16 à C18 de la feuille BS. Là pas de soucis.
Par contre Heure comp à 100% (C15) ou retenue absence (C16) de la feuille Salariale, cela correspond à quelles cellules en feuille BS4

Autre point important, il faudrait que le nom du salarié en feuille Salariale soit identique à celui en feuille BS. Là je peux modifier ?

Oui pour les patronales il me semble que dans la version que j'ai partagé j'avais déjà mis les formules

Idéalement il faudrait que la désignation des données placées en colonne C16 à C24 de la feuille BS soient identiques à celles de C12 à C20 en feuille salariale.

Ah oui en effet ça serait beaucoup plus facile, les modifications des libellés sont tout à fait possible pour faire l'exemple inscrivez ce que vous voulez j'adapterai de toute façon plus tard par rapport pour que les bulletins puissent être réaliste

Par contre Heure comp à 100% (C15) ou retenue absence (C16) de la feuille Salariale, cela correspond à quelles cellules en feuille BS4

Pour les h. complémentaire à 10% c'est pour le cas où un de mes salarié serait en temps partiel, dans quel cas on ne parle pas d'heures supplémentaires mais complémentaire, je comptais faire une mini formule pour que dans le bulletin s'affiche supplémentaire ou complémentaire en fonction du salarié choisi .. je n'ai pas pensé à le faire avant d'envoyer mon fichier .. ma faute

La retenue pour absence elle, correspond à "absence congés payés" et absence maladie dans l'onglet BS, la retenue correspondrais donc à la somme de "absence congés payés" et "absence maladie" qui de mémoire n'est pas encore inscrite dans mon bulletin

Pour ce qui est de modifier les noms, c'est bien sûr faisable !!

Et encore une fois je suis désolée .. je me rend compte que j'aurai pu apporter encore beaucoup de modifications à ce fichier avant de vous le transmettre ...

La retenue pour absence elle, correspond à "absence congés payés" et absence maladie dans l'onglet BS, la retenue correspondrais donc à la somme de "absence congés payés" et "absence maladie" qui de mémoire n'est pas encore inscrite dans mon bulletin

Effectivement il n'y a pas de rubrique absence maladie en BS.

Le code actuel n'importe que les trois premières lignes de BS (donc C16 à C18) vers la feuille Salariale ligne 12, 13 et 14
Inconnues :
- Pour "Indtés C.P" je suppose que l'info vient de I21 dans la feuille BS ?
- Pour le reste (avantage nature, commissions, frais déplacement), je ne peux rien faire si je n'ai pas la correspondance cellule exacte entre les deux feuilles

Bonjour

Vu que plus de retour sur mon dernier message, avez-vous solutionné votre problème ?

Cordialement

Bonjour,

Non je l'avais juste complétement mis de coté et oublié .. mais toujours pas solutionné

En effet les indemnités CP viennent de la feuille BS

Et pour les autres il faudrait remplacer "avantage nat." par prime total et enlever les autres car finalement je peux faire sans ..

Bonjour

enlever les autres car finalement je peux faire sans ..

Que voulez-vous dire par les autres ? Quelles sont-elles ?

Essayez d'être précise sans quoi faut oublier VBA

Commission et frais de déplacement peuvent être supprimé

Désolé la VBA je m'y connais tellement peu .. mes collègues essayent de m'aider sur ce qu'ils connaissent mais c'est vrai que la ma demande dépasse ce qu'ils savent faire ..

Commission et frais de déplacement peuvent être supprim

Ok. J'ai supprimé

Désolé la VBA je m'y connais tellement peu .. mes collègues essayent de m'aider sur ce qu'ils connaissent mais c'est vrai que la ma demande dépasse ce qu'ils savent faire ..

VBA est plus stricte. Il faut savoir exactement où l'info pêchée doit aller
Si dessous la disposition des infos venant de BS qui devraient aller dans Salarial

Les points d'interrogation ne me sont pas connus et ne sont pas nécessaire si vous acceptez que les données soient présentées comme cela dans les deux feuilles jusque la donnée ABSENCE

presse papier02

Dites moi si ok

image

Pour essayer de simplifier encore plus je vous propose :

Salaire de base -> Salaires (heures)

HS à 25%-> Heures supp. à 25%

HS à 50% -> Heures supp. à 50%

Indémnité congés payé -> Indté C.P

Prime (total) -> Prime (total)

Absence -> retenue absence

Absence congés payés -> retenue absence

Indémnité compensatrice de congé payés -> a retirer

Prime de précarité -> à retirer

Heures compl. 10% -> à retirer

On va tester le code ci-dessous en se basant sur le 7 valeurs que vous donnez.

Conditions :
1. Les 7 valeurs doivent être positionnées de la même manière en partant de :
- La ligne 16 pour la feuille Salariale
- la ligne 12 de la feuille BS

2. Le nom en I7 de la feuille BS doit être identique à celui mentionné dans la ligne 8 de la feuille Salariale. (exemple : si pascal en I7, on trouve Pascal en O8)

Mettez ce code dans un module pour tester

Sub test()
Dim Nom As String
Dim Col As Byte, i As Byte

Nom = Sheets("BS").Range("I7").Value
Col = Sheets("Salariale").Range("C8:T8").Find(Nom, LookIn:=xlValues, LookAt:=xlPart).Column

For i = 1 To 7
    With Sheets("Salariale")
        .Cells(i + 11, Col) = Sheets("BS").Cells(i + 15, 9).Value
    End With
Next i
End Sub

dans l'attente de vous lire

Bonjour,

Merci beaucoup, ce code à l'air de bien fonctionner ! je pense que vous l'aurez compris mais je n'aurais pas pu le faire moi même

Désolé du temps que cette histoire aura pris ..

Rechercher des sujets similaires à "macro permettant recopier donnees condition"