Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[Excel] Creare una Maschera...

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[Excel] Creare una Maschera...

Postdi Black.Jack » 21/12/10 11:51

Salve a tutti!


ultimamente mi son imbattuto in una macro molto elaborata per realizzare etichette.
In sostanza dato un "prefisso" alfanumerico, un numero di caratteri massimo di barcode, e il "counter" si doveva ottenere il codice (aumentato di 1 unità x step come da copione). E fin qui tutto ok.


Il problema è stato quando mi hanno aggiunto un DB da cui partire!!

Ossia:

Colonna con "Prefissi" (legati a diversi clienti) preesistenti e colonna a fianco con "Counter" (che riporta l'ultimo numero progressivo stampato).


Adesso mi chiedo come potrei lavorare. Una maschera che faccia scegliere i "prefissi" al counter con una formattazione di 10 caratteri preimpostata sarà la soluzione?

Peccato che non abbia mai fatto una maschera in vita mia!

Cosa ne pensate?

Se riuscite a linkarmi qualche tutorial a me andrebbe già di lusso!

;)
Win7 + Office 2010 Ita
Xp + Office 2010 Ita
Black.Jack
Utente Junior
 
Post: 93
Iscritto il: 23/06/10 08:40

Sponsor
 

Re: [Excel] Creare una Maschera...

Postdi Black.Jack » 21/12/10 16:15

Magari riuscissi ad aggiungere una lista ad un combobox legato ad un userform..... ( :neutral: spero che qualcuno utilizzi i moduli...)
Win7 + Office 2010 Ita
Xp + Office 2010 Ita
Black.Jack
Utente Junior
 
Post: 93
Iscritto il: 23/06/10 08:40

Re: [Excel] Creare una Maschera...

Postdi Anthony47 » 21/12/10 23:22

Non ho afferrato la domanda...
Al momento le etichette hanno una numerazione meramente progressiva, e vorreste invce realizzare una progressione diversa cliente per cliente? (quindi con l' etichetta che ha una parte bassa che incrementa e una parte alta che e' il codice cliente).

Tieni presente che non hai necessita' di creare una form per avere un "combobox": la versione piu' semplice la trovi nella barra degli strumenti Moduli (icona £Casella combinata"), a cui, tramite Tasto dx /Formato controllo, puoi associare un elenco di valori (Intervallo di input) e una cella con la scelta fatta (Collegamento cella).

Una cosa piu' complessa ce l' hai nella barra degli Strumenti di controllo, che offrono al progettista qualche strumento in piu' ma sono "controlli" che hanno bisogno di essere programmati sugli eventi.

Immagino che il tuo problema al massimo possa essere solo parzialmente coperto da quanto detto, per il resto prova a descrivere ancora.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [Excel] Creare una Maschera...

Postdi Black.Jack » 22/12/10 10:30

Ciao Anthony,


grazie son riuscito a cavarmela con vba.


effettivamente la soluzione via Menubar nonostante sia immediata non mi piace perchè "troppo facile"...


voglio realizzare tutto col vba...lo trovo molto + precise e interessanti!!!

sono pazzo lo so !! :lol:
Win7 + Office 2010 Ita
Xp + Office 2010 Ita
Black.Jack
Utente Junior
 
Post: 93
Iscritto il: 23/06/10 08:40

Re: [Excel] Creare una Maschera...

Postdi maxmula » 22/12/10 11:31

Ciao Black.Jack,
se vuoi proprio usare i moduli, non ti resta che crearne uno tuo, metterci i controlli che servono e "popolare" le varie liste prendendo i dati dai vari sorgenti... e qui vengono i problemi.

Se i dati da usare stanno nel foglio in cui gira il form, puoi usare la proprietà Rowsource del controllo ComboBox e ListBox, altrimenti bisognerà sbattersi un po' di più...

Premesso che non ho mai provato ad importare da un database :(, ti passo qualche link, preso dalla mia nutrita collezione.

http://www.fontstuff.com/vba/vbatut10.htm => Popolare covtrolli da database

http://www.dailydoseofexcel.com/archives/2004/05/10/populating-multi-column-listboxcombobox/ => Come popolare Listbox e combobox a colonne multiple

http://ennius.altervista.org/vba/vba106.php => Listbox a più colonne nelle ListBox

http://www.ozgrid.com/Excel/add-values-combobox-excel.htm => Utilizzo delle ComboBox

http://www.mrexcel.com/forum/showthread.php?t=134370 => Inserire titoli delle colonne

http://www.vbforums.com/showthread.php?t=251976 => Le ListView, queste sconosciute.


Spero tu possa trovare qualcosa di utile...

L'output, idealmente, sarà un concatenamento di tutti i valori selezionati nel form.
Scusa se sono un po' generico, ma senza un file d'esempio è un po' dura entrare nei dettagli...

Ciao!
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: [Excel] Creare una Maschera...

Postdi Black.Jack » 22/12/10 12:15

in queste liste, grazie infinite, esiste la spiegazione su come ORDINARE i dati di un combobox inserito in Userform?
Win7 + Office 2010 Ita
Xp + Office 2010 Ita
Black.Jack
Utente Junior
 
Post: 93
Iscritto il: 23/06/10 08:40

Re: [Excel] Creare una Maschera...

Postdi maxmula » 22/12/10 13:59

Se fosse .Net sarebbe semplicissimo... c'è un apposito flag "Sorted" per il controllo (anche se a volte non fa esattamente quello che dovrebbe).

Per VBA, temo che l'unica sia ordinare le voci prima di aggiungerle alla ComboBox.
In questo caso, puoi caricare gli elementi in un array, ordinarlo con un normale procedimento di Bubblesort, ed usare il risultato come base di partenza.

A questo punto:
Codice: Seleziona tutto
For Each DATALINE In DATAARRAY
    ComboBox1.AddItem (DATALINE)
 Next


(DATAARRAY dovrà essere opportunamente dimensionata per ospitare tutte le voci necessarie)

... Oppure, se vuoi, puoi sbatterti un po' di più ed utilizzare una ListView (però non mi risulta ci sia l'equivalente per le caselle a discesa)

Per avere qualche info su come configurarle correttamente la listview, puoi anche provare a leggere questo topic.
Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: [Excel] Creare una Maschera...

Postdi Black.Jack » 22/12/10 14:10

Grazie sei un mito... ;)
Win7 + Office 2010 Ita
Xp + Office 2010 Ita
Black.Jack
Utente Junior
 
Post: 93
Iscritto il: 23/06/10 08:40

Re: [Excel] Creare una Maschera...

Postdi Black.Jack » 22/12/10 16:44

Adesso mi piacerebbe capire quali siano le coordinate della cella selezionata dal combobox...
Win7 + Office 2010 Ita
Xp + Office 2010 Ita
Black.Jack
Utente Junior
 
Post: 93
Iscritto il: 23/06/10 08:40

Re: [Excel] Creare una Maschera...

Postdi Anthony47 » 23/12/10 00:15

Calcoli la riga dove giace LA PRIMA OCCORRENZA della voce scelta con una Application.Match(Valore, Range, 0). Questa e' l' equivalente della funzione Confronta di excel.

Sarebbe bello se volessi pubblicare il dettaglio del lavoro fin qui realizzato.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [Excel] Creare una Maschera...

Postdi Black.Jack » 24/12/10 12:35

certo anthony.

attendo che sia ultimato!!

magari potrebbe tornare utile ad altri...anche se non credo, in fondo non uso molte funzioni e vado avanti ad "espedienti" ;)
Win7 + Office 2010 Ita
Xp + Office 2010 Ita
Black.Jack
Utente Junior
 
Post: 93
Iscritto il: 23/06/10 08:40

Re: [Excel] Creare una Maschera...

Postdi maxmula » 25/12/10 20:11

Mi raccomando: quando pubblichi esempi sul forum abbi cura di rimuovere tutti i nomi riconducibili a persone o aziende reali e qualunque informazione che possa essere ricondotta alla categoria "Dati personali" ;)

Ciao e... AUGURI A TUTTI!
Un MAx natalizio.
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Creare una Maschera...":


Chi c’è in linea

Visitano il forum: alfrimpa e 17 ospiti