:PROPERTIES: :ID: c53f8d4d-ae89-42f8-90ed-efefd38279a0 :END: #+title: faire-ses-factures-avec-libreoffice-ou-google-sheet #+post_ID: 365 #+post_slug: faire-ses-factures-avec-libreoffice-ou-google-sheet #+post_url: https://www.ciperbliss.com/2016/faire-ses-factures-avec-libreoffice-ou-google-sheet #+post_title: faire ses factures avec libreOffice ou google sheet #+post_tags: comptabilité, factures #+post_type: post #+post_mime_types: #+post_guid: undefined #+post_status: publish #+post_date_published: <2016-12-26T17:42:42> #+post_date_modified: <2016-12-27T14:02:20> #+post_index_page_roam_id: fa7f2a8c-2b94-4e42-bb4c-25c026ed7ff9 #+retrieved_from_db_at: <2024-11-18 16:25:08> * faire ses factures avec libreOffice ou google sheet :PROPERTIES: :CUSTOM_ID: faire-ses-factures-avec-libreoffice-ou-google-sheet :END: [[https://www.libreoffice.org/download/libreoffice-fresh/][*Libre office*]] est la suite bureautique gratuite fournie de base sur ubuntu et disponible pour toutes les plateformes.Si comme moi vous avez longtemps galéré a trouver le logiciel ultime pour faire des factures un tant soit peu sérieuses, sachez qu'il est tout a fait valable d'utiliser un simple tableur capable d'exporter en pdf ses fichiers.Faire des factures constitue des calculs simples mais relou à reporter dans un fichier. Pour une AE ça va, mais quand vous changez de structure pour une SARL ou une EIRL, ou une EI, ou une SAS, ou JEEJ, vous aurez sans doute a faire de savants calculs de TVA. D'aucuns vous diraient d'investir dans des service de comptabilité en ligne, mais vous pouvez faire déjà énormément de choses avec un seul fichier de calcul. Faire ses feuilles de calcul n'exclue pas de faire appel à un pro de la comptabilité, c'est d'ailleurs ce que je fais régulièrement et c'est ultra conseillé dès qu'on a une structure qui sort de l'auto entreprise. Si vous êtes en AE, ça pourrait aussi vous servir. Dans tous les cas commencez à trier vos paperasses administratives minutieusement sur votre ordi, et faites vraiment des backups.Ce que j'ai donc fait c'est un fichier de calcul sur [[https://www.google.com/sheets/about/][*google sheets*]] afin de pouvoir le modifier de plusieurs gens à la fois, mais surtout de plusieurs endroits différents avec de merveilleux graphiques et l'exporter en format ouvert .odt , lisible par libre office par exemple. Ce fichier contient plusieurs feuilles dont chacune a un seul but: - statistifier mes dépenses perso et pro sur le long terme (en utilisant les cellules des autres feuilles du classeur) - compter mes kilomètres parcourus au nom de mon activité - compter mes déjeuners - compter mes factures - mes paiements trimestriels à l'URSSAF - mes achats au nom de l'entreprise - prévoir la disponibilité de ma trésorerie sur le long terme en majorant mes dépenses moyennes - exporter une facture en pdf. On va surtout s'intéresser aujourd'hui au contenu de la feuille permettant de remplir les infos pour faire les factures et les envoyer à votre client avant la fin du mois.les lignes se présentent ainsi: objet N° client dans l'année majuscule de clients commentaire tarif jour HT tarif jour TTC jours facturés congés jours ouvrés date start date end ce mois à venir HT TVA TTC prévu fait reçu retard val charges facture envoyée le délai jours attendu reçu diff date mois trimestre n° facture moyen Dans cette première feuille, une ligne correspond à une facture. Petite subtilité chez google drive, les dates ne sont pas écrites de façon classique (croissante) jour/mois/année , mais de façon bourrée dégueulasse signée Murica mois/jour/année.Quelques fonctions vachement bien (/à chaque fois je vous donne la version google sheet, puis la version libre office en français si c'est différent, qui traduit aussi ses fonctions et a quelques différences de notation, notamment des virgules qui deviennent des points virgules, et des noms de fonctions découpées par des points/):*Avoir le nombre de jours ouvrés* entre deux choix dans la date: #+begin_quote =NETWORKDAYS( date_début, date_fin )=NB.JOURS.OUVRES( date_début ; date_fin) #+end_quote *Utiliser SI, pour ne pas avoir des cases provoquant des erreurs.* par exemple si on a des jours ouvrés à facturer, calculer le tarif hors taxes, sinon afficher du vide. #+begin_quote =IF( nombre_de_jours_ouvrés , nombre_de_jours_ouvrés*tarif_jour_hors_taxes , "") #+begin_quote =SI( nombre_de_jours_ouvrés , nombre_de_jours_ouvrés*tarif_jour_hors_taxes , "") #+end_quote #+end_quote *Calculer la date prévue d'arrivée du paiement* est plus facile que ce qu'on pourrait croire. Enfin, une fois le calcul fait il reste a bien formater le résultat sous forme de date. #+begin_quote =date_envoi+délai_paiement_en_jours #+end_quote N'oubliez pas qu'un délai de paiement est toujours un truc négociable, qu'il est en moyenne de 30 jours continus (c'est pas pareil que des jours ouvrés) après l'envoi de votre facture à la fin du mois ouvré. Mais il peut aussi plus étendu jusqu'à 60 jours, ou être bien plus rapide: "à date", voire être réglé en partie ou en totalité (plus rare) en avance. Il arrive par exemple que je demande 30% d'avance pour des missions très courtes.*Ajouter 20% au tarif hors taxes* (ma TVA reste a 20% car je fais de la prestation de service, et non de la vente de marchandises) #+begin_quote =tarif_ht+tarif_ht*0.2 #+end_quote Voilà, avec ça vous avez déjà tout ce qu'il vous faut pour faire des lignes de facture.Plus complexe, on va *trouver le trimestre correspondant à la date de réception d'un paiement* pour une facture. #+begin_quote =ROUNDUP( MONTH(date_reception)/3,0 )=ARRONDI.SUP( MOIS(date_reception)/3;0 ) #+end_quote Avec ce trimestre on va ensuite pouvoir faire des sommes conditionnelles des paiements reçus par trimestre avec la fonction Somme.si. =SUMIF( plage_pour_critère ; critère ; plage_de_somme_si_critère_vrai ) =SOMME.SI( plage_pour_critère ; critère ; plage_de_somme_si_critère_vrai ) Faites gaffe à ne pas utiliser la même colonne pour la date d'estimation de la réception et la réception réelle. Vous pourrez ainsi déduire les retards de paiement et savoir à qui vous devez mener la vie dure facilement et faire valoir vos [[https://www.service-public.fr/professionnels-entreprises/vosdroits/F23211][indemnités de retard au tarif légal]]. (Ne bossez jamais avec de mauvais payeurs. Indiquez clairement la date d'exigibilité sur vos factures, car des surplus pour cause de retard, l'URSSAF ne se gênera pas de vous en donner)Pour mettre à jour le contenu de cette feuille j'ai utilisé plusieurs fonctions qui font références a des concaténations de contenus d'autres cellules afin de faire par exemple, une phrase rassemblant "facture n°" et le n° de la ligne dont je souhaite exporter une facture. #+begin_quote si F1 est le numéro de facture contenant 1234=CONCATENATE("Facture n° ",F1)=CONCATENER("Facture n° ";F1)cela vaut facture n° 1234 #+end_quote Mettons que la ligne de ma facture à faire pour ce mois ci soit la 42e sur ma feuille nommée compta.Je dois donc placer dans ma facture une référence vers le tarif TTC total de la ligne 42, qui se trouve donc dans la cellule T42. Mais comme je suis dans une autre feuille il faut dire aussi dans quelle feuille prendre notre numéro de cellule. #+begin_quote ="compta!T42"="compta.T42" #+end_quote Mais je devrai aussi l'écrire pour les autres mentions obligatoires d'une facture. la quantité de jours ouvrés, le tarif hors taxes, le tarif ttc, la tva, le total hors taxe, la date du jour...=TODAY()=AUJOURDHUI()Mais ce serait un peu trop fatiguant de modifier une dizaine de références à chaque fois que je veux faire une facture.j'ai donc utilisé la fonction INDIRECT() afin de variabiliser les références dans ces formules dans ma facture. de cette façon je n'ai qu'une seule cellule à mettre à jour pour changer toutes les références de ma facture.Pour cela je me fais une cellule remplie de la ligne de la facture que je veux réaliser, je prends une case, L1, et je mets dedans 42. Ensuite, avec indirect() je vais pouvoir utiliser le résultat de cette cellule pour fabriquer une formule. Je n'aurai plus qu'a réunir /compta!T/ et /42/ pour obtenir le résultat de /compta!T42./ #+begin_quote =INDIRECT(CONCATENATE("compta!T", L1))ce qui calculera:="compta!T42" #+end_quote et si je change la case avec marqué 42 dedans en 43 pour voir la facture suivante, ça calculera #+begin_quote ="compta!T43" #+end_quote nickel non?Vous pouvez aussi faire les choses encore plus proprement en créant une feuille exprès pour ces calculs à placer dans la facture pour ne pas encombrer la page de facture.Il ne reste plus qu'a faire "fichier > exporter en pdf" et choisir de limiter a la feuille courante (celle de la facture) cacher le quadrillage dans les options d'export, choisir l'orientation en portrait pour avoir votre facture toute belle toute calculée les doigts dans le nez. Bon, il faudra sans doute que vous joueiez sur les tailles des cellules afin de remplir une feuille A4 pour que ça soit propre, mais à tâtons d'exportation vous y arriverez en deux minutes maxi.Et si vous êtes un warrior des feuilles de calcul vous pouvez auto remplir la ligne désignant la facture selon la date courante en utilisant des comparaisons entre TODAY() et les dates de début et de fin des jours ouvrés.Joyeux noël!