Sono un utente VBA pesante che quando ha la possibilità di fare un piccolo progetto in python è come andare dall'inferno al paradiso quando si tratta di programmare da solo. Tuttavia, so che i miei utenti vogliono rapporti in Excel (per buoni motivi) e non sono pronto a rinunciare a quanto sia incredibilmente facile distribuire una nuova versione in Excel: basta salvare una nuova cartella di lavoro con il nome della nuova versione.
Queste cartelle di lavoro hanno qualcosa come 30 utenti di diversi dipartimenti / paesi. Ho una nuova versione almeno una volta alla settimana e spesso 2/3 nello stesso giorno. La distribuzione deve essere pratica.
Cercando di combinare il meglio di entrambi i mondi mi è venuta la seguente domanda:
Tuttavia ciò che mi ha dato speranza è stato il 'Way 2' qui:
che mi ha portato qui:
Mentre scendo in questa tana del coniglio ho pensato che non sarebbe stato saggio chiedere in giro ad altri che hanno provato qualcosa di simile. Quello che temo è che questa sarà una di queste situazioni con così tante complicazioni extra che, anche dopo la curva di apprendimento iniziale, i costi supereranno i benefici.
Qualche parola sui rischi che sto prendendo cercando di trovare un approccio molto pratico e pratico con build-in-python-use-it-in-VBA?
L'utente interagisce pesantemente con la cartella di lavoro tramite eventi del foglio di lavoro (come fare clic su questi dati per visualizzare i dettagli). Questo sostanzialmente trasforma la cartella di lavoro in un ibrido di report e applicazione. Hanno anche bisogno di cose come cambiare il formato della cella e stampare la formula in una cella. Spesso un pivot verrà messo sopra i dati e l'utente giocherà con esso. Tutto questo dà l'impressione che avrò sempre bisogno di un layer VBA che chiami gli oggetti python.