QR-factures pour la Suisse

Désolé, je pensais que c'était un autre fichier.

Le problème n'est même pas python alors, c'est que excel n'écrit pas de fichier .py.

Y a t'il un problème d'accès en écriture ? le nom du chemin est bin strictement bien orthographié ?

Je vais réfléchir d'ici demain à des tests.

Ne suis pas programmeur, mais j'essaie d'adapter quand je comprends :)
Je ne crée quasi rien, mais j'adapte quand c'est possible, mais là il n'y a même pas une erreur dans la macro et ça .... ben je passe la main (quoique)
Les dossiers ou j'ai mis PyQR... comme python ....
Const PythonExe = """C:\Users\Michel\AppData\Local\Programs\Python\Python39\pythonw.exe"""
Const repertoirePyQRCode = "C:\Users\Michel\AppData\Local\Programs\PyQRCode-1.2.1\"

Ta remarque sur les droits d'accès ..., j'ai copié le répertoire sur ma partition D:\ et hop plus d'erreur :)

Comme quoi ..... il en faut peu pour faire chi...., mais bon à savoir, pour d'autres !

Const repertoirePyQRCode = "D:\PyQRCode-1.2.1\"

Suite ...
Je me suis mis à faire un BV complet ou figure toutes les informations de la feuille à Steelson mais un problème se présente et je sèche !
La mise en page du récépissé est différente de celle de la section paiement, je m'explique
Récépissé (gauche) : taille caractères des infos = 8pt et interligne = 9pt; taille caractères des titres = 6pt, interligne = 9pt et en gras !
Section paiement (droite) : taille caractères des infos = 10pt et interligne = 11pt; taille caractères des titres = 8pt, interligne = 11pt et en gras !

Si l'interligne avait été le même, il n'y aurait pas eu de soucis mais ce n'est pas le cas justement

J'ai pensé procéder comme ça, dans une cellule avec retour auto à la ligne, je concatène toutes les informations par exemple du récépissé avec des retours à la ligne comme ça : =C42 & CAR(10) & C23 & CAR(10) & C24 & CAR(10) & C25 & CAR(10) & C28 & " - " & C26 & " " & C27
Le but étant d'obtenir l'image ci-dessous (avec mise en gras et interligne correct)

mise en forme

Existe-t-il une solution à mon problème ou c'est peine perdue ?
Merci d'avance

PS : je ne trouve pas ou déplacer le QR Code pour le décaler de 3mm en haut et 3mm à gauche afin qu'il soit exactement au bon endroit ?

Attention, l'application permet de générer le QRCode à partir de la liste des informations nécessaires. Mais je n'ai pas fait le format récépissé (et j'en serais bien incapable), j'espère que les autres intervenants pourront t'aider sur ce point.

Pour ce qui est du placement du QRCode (et de la croix centrale), il se cale sur la cellule appelée iciQRCode que tu peux placer où tu veux, au milieu de la partie récépissé de la feuille. Pour régler au mieux, tu peux ajouter quelques pixels dans le code ici

    ' lieu de mise en place du QRCode
    With Range("iciQRCode")
        yq = .Top: xq = .Left
    End With

mais je suis toujours surpris de la précision (horlogère) suisse quant à la taille exacte et au placement ... fais un essai réel avec une transaction réelle, les lecteurs sont heureusement tolérants.

Salut Bifrons,

Qu'esse t'as fait à mon drapeau C'est des étoiles, nos districts, pas des coeurs.

Uniquement en ce qui concerne la mise en page de la partie basse des factures, je te montre ma solution ...... plutôt bricolée. A noter que je ne me suis pas intéressé aux factures avec montants pré-imprimés, non utilisés par notre association.

Pour le réglage de l'image, j'ai modifié cette partie avec des - 9 :

    ' importation de la nouvelle image QRCode
    ActiveSheet.Pictures.Insert("myQRCode.svg").Select
    With Selection.ShapeRange
        wq = .Width: hq = .Height: .Left = xq - 9: .Top = yq - 9: .Name = "myQRCode" ' - 9 est le déplacement de la forme entourant le QR-Code et qui serait placé, si non, plus bas et plus à droit, déplaçant le QR_Code d'autant.
    End With
26bis.xlsm (85.75 Ko)

.

Salut Steelson

J'ai imprimé nos 700 factures qui seront envoyées le 16 novembre. Je pensais attendre de voir s'il y avait des problèmes lors des paiements avant de revenir vers toi, mais vu l'occasion qui se présente ....

Ma QR-forme est un peu tassée, c'est à dire qu'elle s'imprime plus large que haute. Comme ça ne présentait aucun problème pour un paiement aux guichets postaux, j'ai laissé aller les choses ainsi. Mais pour le futur, as tu déjà une idée de correction ?

J'ai vu que je pouvais l'étirer vers le bas par exemple, avec le code qui suit, mais le drapeau suisse ne suis pas, il faudrait encore corriger cela.

    ActiveSheet.Shapes.Range(Array("myQRCode")).Select
    Selection.ShapeRange.ScaleHeight 1.0512820513, msoFalse, msoScaleFromTopLeft

Cordiales salutations.

Bonjour Yvouille,

Salut Steelson

Ma QR-forme est un peu tassée, c'est à dire qu'elle s'imprime plus large que haute. Comme ça ne présentait aucun problème pour un paiement aux guichets postaux, j'ai laissé aller les choses ainsi. Mais pour le futur, as tu déjà une idée de correction ?

J'ai vu que je pouvais l'étirer vers le bas par exemple, avec le code qui suit, mais le drapeau suisse ne suis pas, il faudrait encore corriger cela.

    ActiveSheet.Shapes.Range(Array("myQRCode")).Select
    Selection.ShapeRange.ScaleHeight 1.0512820513, msoFalse, msoScaleFromTopLeft

Eric avait déjà mentionné cela https://forum.excel-pratique.com/excel/qr-factures-pour-la-suisse-105696/9#p903636, mais chez moi c'est carré de chez carré ! Je viens de faire mon attestation de sortie française selon le même principe https://forum.excel-pratique.com/excel/formulaire-pour-attestation-148130#p912783 et c'est on ne peut plus carré !

J'aimerais bien savoir si c'est excel qui tord le cou, ou ton écran ou ton installation :

  • peux-tu faire un lancement de myQRCode.svg dans un navigateur par exemple et verifier s'il est toujours aplati
  • tu peux aussi ouvrir myQRCode.svg avec un simple traitement de texte, tu verras que width et height ont la même valeur
  • changer dans le code VBA la hauteur (x 1,05) n'a aucune incidence puisque la largeur suivra aussi (essai fait)
  • on pourrait lire le contenu de myQRCode.svg, modifier en texte la valeur de height et sauvegarder, mais cela ne me plait pas trop de triturer l'image elle-même, et cela ne fonctionne pas plus l'image est définitivement définie comme un carré ! (essai fait)

Reste ta solution est certainement la seule.

Pour le drapeau, il faudrait quelque chose comme ceci

    ' mise en place du logo
    With ActiveSheet.Shapes.Range("logo")
        .Left = xq: .Top = yq: .IncrementLeft (wq - .Width) / 2: .IncrementTop (hq - .Height) / 2 * 1.0512820513: .ZOrder msoBringToFront
    End With

à tester (je ne l'ai pas fait car il faut que je change de pc pour avoir xl2016).

.

Si cette solution marche c'est très bien.

C'est une question d'image de marque de l'asso ou du fournisseur et que la précision de la spec est un peu déroutante, mais fonctionnellement le QRCode plus petit, plus grand, moins carré sera toujours lu correctement. Il suffit de lire le QRCode avec un smartphone incliné à 45° par rapport à la surface avec tout le parallaxe que cela entraîne et ce sera lu.

Salut Steelson et merci pour ta réponse.

C'est embêtant, mais tu as raison Le code que je pensais être utilisable modifie les deux dimensions de la forme. Mais c'est très bizarre, car il y a bien la notion de hauteur dans cette instruction (ScaleHeight).

J'ai bien évidemment oublié d'indiquer que le problème n'apparait qu'à l'impression des documents et n'est que purement esthétique. Lorsque j'avais fait mes propres essais, j'avais vu que je pouvais modifier qu'une seule des deux dimensions - selon l'image ci-jointe - et en avait enregistré le code. Mais comme la facturation 2021 était trop avancée, j'avais laissé ce problème de côté pour 2022, sans pousser mes essais plus loin.

Je n'avais pas vu le poste d'Eriiic que tu mentionnes. Il parle effectivement d'appliquer un coefficient sur hauteur ou largeur dans Excel. Y aurait-il quant même une solution ?

Amicales salutations.

capture

En fait je n'ai pas de solution car le QRCode est bien carré et a priori rien ne le fera changer ! Il est têtu ...

En fait tout dépend des écrans et des imprimantes et de leurs dpi (dot per inches), et chez moi j'ai bien la même valeur en horizontal et en vertical sur l'écran. Je vais essayer une impression.

pixelsdpi
hauteur écran1920144
largeur écran1080144

Un outil pour le déterminer facilement, pour l'écran. Pour les imprimantes ?? je vais regarder les caractéristiques de la mienne.

19dpi-screen.xlsm (24.08 Ko)

https://forum.ubuntu-fr.org/viewtopic.php?id=154925 mais cela ne donne pas la solution même si on parle de format papier US versus A4 !

Eriiic faisait bien mention d'un problème à l'impression aussi.

Re,

Merci pour toutes ces infos, mais je vais laisser tomber ce problème pour l'instant car mes QR-codes imprimés - bien qu'un peu rabougris - sont officiellement lus sans problème, mais aussi car la vieille imprimante de notre association sera éventuellement remplacée d'ici la prochaine facturation en octobre 2021. J'ai bien une centaine de factures à imprimer durant l'année, mais rien de bien grave.

J'ai remarqué à retardement une chose qui m'a interpellé : tu as "imprimé ton attestation de sortie française". Est-ce à dire que tu quittes la France ? Tu as décidé de venir nous rejoindre ?

Hé bien, cela me plairait d'habiter la Suisse, le pays d'En-Haut par exemple,

mais non comme nous sommes de nouveau confinés en France, il nous faut une attestation pour sortir, soit papier soit un QRCode long à renseigner en ligne, donc je me suis fait un fichier dont je n'ai qu'à changer le jour et l'heure, et j'en fais une photo avec mon téléphone en cas de contrôle.

Bonjour à tous...

une petite idée... en passant par là, il n'y aurait pas la définition d'une zone d'impression ?? avec un paramétrage au niveau de l'impression à 1 page sur 1? ou un truc du genre...

J'ai souvent remarqué qu'en faisant ce genre de paramétrage, excel modifiait l'impression de forme non identique a ce qu'il y à l'écran... pour que le tout prenne 1 page à l'impression

Fred

Edit :

Bon je viens de faire un essai.. et même en mettant rien de particulier les formes sont aussi raplaplat...

donc aucune idée...

Et celui-ci, vous arrivez à le sortir au carré ?

capture d ecran 51

Très Jolie Steelson....

bon blague a part...

j'ai fais quelques essais...

si le QR code est Carré dans Excel, il ne l'est pas à l'impression pdf ou papier :

qr carre excel

et si on bidouille un peu les dimensions dans excel... il n'est donc plus carré à l'écran... mais à l'impression oui... (enfin presque a quelques 10e de milimètre... !!!)

qr carre impression

Fred

Au fait ne pas tenir compte de la netteté du QRcode dans word... car c'est un fichier Excel imprimer en PDF puis remis en word... pour voir les dimensions... mais a l'impression (sur mon imprimante Epson) le QR code est bcp plus net... et est bien carré dans le 2e cas...

Fred

Du coup, la croix s'est légèrement remontée, mis cela reste lisible (au même titre que si rien n'avait été fait !)

Elles ne sont pas mauve les vaches suisses ? On m'aurait menti ?

Re bonjour... pour la croix suisse... voici une impression écran depuis le pdf (carré en impression de ci dessus) qui a un meilleur rendu visuel :

image

ou carré sur Excel au depart :

image

Honnêtement pas trop de différence.. mais si on veut chipoter un peu... il faudrait déplacer la croix suisse vers le bas de pas grand chose..

Fred

Rechercher des sujets similaires à "factures suisse"