View Full Version : (EXCEL) formula magica
BlackHawk62
21-02-2008, 15:56
:muro: :help: :muro: Ciao a tutti, ho bisogno di estremo aiuto: in Excel come posso impostare un foglio di 6 etichette in modo che ognuna abbia un numero progressivo
(ad es. da 1 a 10.000) e che, se possibile con un unico comando (e/o formula) mi permetta di stampare il n° di copie che mi serve ? L'incremento deve essere di un'unità.
Io per adesso dopo aver impostato il foglio devo digitare per n volte un numero multiplo di 6 ( 7, 13, 19, 25 ecc...) fino ad arrivare a 10.000 (uno spasso!!).
In sostanza per riassumere: mi serve il metodo per mezzo del quale con un unico comando possa stampare in automatico una serie di fogli contenenti 6 etichette contenenti una casella con una numerazione progressiva. .
Spero di essere stato abbastanza chiaro nella spiegazione: contattatemi in caso di richiesta ulteriori chiarimenti: ripeto che è veramente importante per me: ringrazio di cuore in anticipo chi mi puo' aiutare.:muro: :help: :help:
Sembra interessante... Va beh, proviamoci. :)
Ho solo un dubbio preliminare, riguardo il concetto di "etichetta".
Per etichetta intendi un certo intervallo di celle, una forma ( Shape ) di Office... o cosa ?
BlackHawk62
25-02-2008, 06:54
Marco, grazie innanzitutto per il tuo interessamento: per etichetta intendo che il foglio (A4) che stampo è formato in qto caso da 6 etichette. Fammi sapere se ti è chiaro: spero tu possa arrivare alla soluzone del mio problema.
grazie ancora. Ti allego 2 immagini del file: li ho dovuti comprimere parecchio per poterli salvare. Ogni singolo dato è una cella come il campo dove è inseriro il n° progressivo. Ciao
Ti allego 2 immagini del file: li ho dovuti comprimere parecchio per poterli salvare. Ogni singolo dato è una cella come il campo dove è inseriro il n° progressivo. Ciao
Per le immagini meglio usare uno dei tanti siti di free hosting ( imageshack.us, freeimagehosting.net, allyoucanupload.webshots.com, ecc... ).
Se puoi, anzichè le immagini, posta il foglio Excel che contiene la pagina A4 con le 6 etichette. Molto meglio.
In pratica, in questo caso, tu inserisci manualmente il valore sulla prima etichetta in alto a sinistra di ogni foglio [ 2950 / 6 ] 492 volte, mentre immagino tu abbia nelle restanti 5 etichette una formula che incrementa +1, +2, ecc... E dovrai pure dare "Stampa" manualmente 492 volte ! Mica male ! :D
La soluzione al tuo problema non è immediata, ma nemmeno difficile. Ripeto, se puoi posta il foglio Excel...
BlackHawk62
25-02-2008, 08:05
Ti invio il file zippato. Vedo che hai capito perfettamente il mio problema: digitare x centinauia di volte con il rischio di fare errori nonè proprio niente male!
Nelle celle successive al 1° numero c'è la formula
come dicevi tu : ad esempio (C11+1, C11 + 2 ecc...).
Grazie, ciao.
Ok. Ti dico subito che senza VBA non ne esci vivo. :)
Perciò crea un bel pulsante di comando "CommandButton" sul foglio che contiene le etichette da aggiornare / stampare. Mettilo in alto a sinistra e ridimensionalo in modo che, anche se stampato, non si noti o quasi. Puoi renderlo NON-Stampabile anche cliccandoci di destro / Formato Controllo / Proprietà / Stampa Oggetto...
- NOTA : sul tuo foglio ho trovato 20 etichette... Non va bene. E' necessario che sul foglio ci siano esattamente tante etichette quante basteranno a riempire un A4. Lascio a te tutto il lavoro di impostazione pagina. Mettiamo che su un A4 ce ne stiano 6 : su "Foglio1" dovrai avere esattamente 6 etichette. Sulla prima in alto a sn metti pure "1", e nelle altre le formule che incrementano il contatore, come avevi già fatto tu...
- Al Click del pulsante bisogna che associ il mio seguente CODICE, che quindi sarà :
Private Sub CommandButton1_Click()
Dim MIN As Long
MIN = 1
Dim MAX As Long
MAX = 18
Dim NumPerPag As Long
NumPerPag = 6
Dim i As Long
i = 1
Range("C11").FormulaR1C1 = i
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
For i = (MIN + NumPerPag) To MAX
If ((i - 1) Mod NumPerPag) = 0 Then
Range("C11").FormulaR1C1 = i
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
End If
Next i
End Sub
MIN = 1
MAX = 18 >> Per prova comincia con 3 fogli A4 dalla 1 alla 18. Non mandare in stampa subito 2950 etichette ! :D
NumPerPag = 6 >> Num etichette per pagina A4...
Dovrebbe già andare bene. Non garantisco sia esente da errori, perchè non ho provato a stampare... Vacci cauto.
Prova... ;)
BlackHawk62
25-02-2008, 09:50
Grazie Marco!!
Due domande però: come faccio a creare il pulsante di comando e cosa significa VBA ? E' forse il linguaggio di programmzaione Visual Basic ?( e la A cosa vuol dire?)
Io non l'ho mai usato e non lo conosco, spero di riuscire a cavarmela da solo con l'aiuto della guida in linea di Excel. Per adesso ti ringrazio molto per la tua cortesia e per aver (spero tanto!!) trovato la soluzione al mio problema che, credimi, come tu già hai intuito è un bel casino.
Ti faccio sapere qlcosa appena ho delle novità.
Grazie ancora e che la forza sia con noi!
Grazie Marco!!
Due domande però: come faccio a creare il pulsante di comando e cosa significa VBA ? E' forse il linguaggio di programmzaione Visual Basic ?( e la A cosa vuol dire?)
Menu di Excel > Visualizza > Barre degli Strumenti :
Scegli di visualizzare le barre "Visual Basic" e "Strumenti di Controllo".
Sulla barra "Strumenti di Controllo" trovi il "Pulsante di Comando"...
VBA = Visual Basic for Application : quello che rende Excel uno dei miei tools di sviluppo preferiti ! ;)
Per adesso ti ringrazio molto per la tua cortesia e per aver (spero tanto!!) trovato la soluzione al mio problema che, credimi, come tu già hai intuito è un bel casino.
In realtà no. Ma smanetta un po' e ce la farai... ;)
BlackHawk62
25-02-2008, 10:34
Scusa Marco due domande: la Barra Strumenti di Controllo è quella che si chiama casella degli strumenti?: è l'unica che ho trovato dove è presente il pulsante di comando .
La seconda: bisogna togliere la protezione dal foglio di lavoro (è richiesta una password) per poter procedere ?
Te lo chiedo perchè i comandi sono quasi tutti disattivi. Inizialmente sulla barra dove ho il pulsante di comando erano attivi solo 3 icone (le prime in alto dove cè la squadra di colore azzurro ) adesso invece sono tornato (mentre sto scrivendo ) un attimo in excel e, come per incanto, si sono attivati tutti i comandi della barra: non so per quale motivo comunque inizio a provare . . . .
Che versione di Excel hai ?
In ogni caso devi aprire il menu Visualizza / Barre degli Strumenti / Strumenti di Controllo, su cui trovi vari controlli Vba, tra cui il nostro Pulsante di Comando...
BlackHawk62
25-02-2008, 10:55
La versione è Excel 2000.
Cmq penso di esserci riuscito : ho inserito i comandi che mi hai postato, l'ho chiuso e adesso mi appare il pulsante grigio con su scritto sopra commandbutton1. Ma adesso per renderlo attivo cosa devo fare?
BlackHawk62
25-02-2008, 11:18
Ho provato a stampare 3 fogli: ognuno però riporta sempre gli stessi numeri : da 1 a 6.
Ovviamente NON devi stampare da menu File / Stampa... Ma la stampa viene lanciata quando fai Click sul Command Button !
Per renderlo attivo, ossia "cliccabile" devi prima uscire dalla "modalità progettazione", il pulsante con squadretta/matita/righetto che è presente sia nella barra strumenti "Visual Basic", sia in quella "Strumenti di Controllo"...
Comunque ho appena fatto una piccola prova... Il mio codice è perfetto. ;)
BlackHawk62
25-02-2008, 15:17
Grande grandissimo Marco!!!
Se tu fossi una bella ragazza per ringraziarti ti manderei un bacione grosso come il Torrazzo di Cremona (la mia città), "purtroppo" ti devi accontentare solo di un grazie (enorme però) di tutto cuore: non sai le migliaia di digitazioni e gli innumerevoli estenuanti controlli...
Sei stato l'unico ad interessarti, a provare e riuscire a risolvere sto rompicapo.
Grazie ancora: se capiti da queste parti vieni pure a trovarci: se ti piacciono i cioccolatini e i marron glacè te li facciamo assaggiare !
Eh eh :cool:
Credo che opterò per un semplice virile ringraziamento... E per i marrons glacés... :D
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.