Accueil

Principe

 

Le principe est simple, une macro vba crée le script le lance puis récupère le résultat.
Pour récupérer le résultat, il faut juste modifier le code python pour que celui-ci crée un fichier texte avec le résultat sous forme de couple nom variable/valeur séparées par une tabulation :

 with open("c:/test/hauteur_resultante.txt", "w") as fichier: 
    fichier.write("hauteur_resultante\t" + str(hauteur_resultante) + "\n")

Il faut que le script créé soit associé aux valeurs du classeur excel et que le résultat soit automatiquement récupéré dans excel.
Maintenant, vous avez un code qui marche chez vous, mais qui dit que le fichier hauteur_resultante.txt est intéressant et que l’arborescence est la même chez l’utilisateur.
D’autre part, la ligne
 aire_du_carre = 81  

N’est pas utile à l’utilisateur. De même que :
 print("hauteur rectangle "+str(hauteur_resultante)) 

La solution que j’ai trouvée pour que vous puissiez tester le programme dans votre environnement python puis l’intégrer dans un outil excel sans avoir à modifier quoi que ce soit, est de rajouter le commentaire #delete! sur les lignes à supprimer.
 
def trouver_hauteur(aire):
    # Calculer la longueur du côté du carré (côté = racine carrée de l'aire)
    cote_carre = aire ** 0.5
    # Calculer le périmètre du carré
    perimetre_carre = 4 * cote_carre
    # Calculer la longueur du côté du triangle équilatéral
    cote_triangle = perimetre_carre / 3
    # Calculer la hauteur du rectangle
    hauteur_rectangle = (perimetre_carre - 2 * cote_triangle) / 2
    return hauteur_rectangle
# Exemple d'utilisation
aire_du_carre = 81 #delete!
hauteur_resultante = trouver_hauteur(aire_du_carre)
with open("c:/test/hauteur_resultante.txt", "w") as fichier: #delete!
    fichier.write("hauteur_resultante\t" + str(hauteur_resultante) + "\n")
print("hauteur rectangle "+str(hauteur_resultante)) #delete!

En faisant comme ça, vous n’avez plus d’initialisation de variables ni de nom de répertoire pour exporter les résultats.
Vous allez utiliser #ouverture_fichier_resultat! pour l’ouverture du fichier et cela remplacera l’instruction d’ouverture.
et par exemple #aire_carre! pour l’initialisation : un texte entre un # et un ! qui servira dans excel mais restera un simple commentaire tant que vous travaillerez sur votre environnement.
La fin du programme devient simplement :
 
# Exemple d'utilisation
aire_du_carre = 81 #delete!
#aire_carre!
hauteur_resultante = trouver_hauteur(aire_du_carre)
with open("c:/test/hauteur_resultante.txt", "w") as fichier: #delete!
#ouverture_fichier_resultat!
    fichier.write("hauteur_resultante\t" + str(hauteur_resultante) + "\n")
print("hauteur rectangle "+str(hauteur_resultante)) #delete!



Retour

Suivant