Condividi:        

VBA e Excel

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

VBA e Excel

Postdi Piffero83 » 12/04/11 18:42

Salve a tutti,
volevo chiedere una cosa a chi conosce il linguaggio Visual basic che gira sotto Excel.
Premettendo che non sono pratico, anzi non conosco quasi niente di Visual Basic :lol: ma leggendo sui vari forum e scopiazzando e cercando di capire il linguaggio, ho creato una userform per il mio progetto.

File excel: fogli "Fattura", "Archivio_Clienti", "Articoli", "Archivio_Fatture"
nella userform ci sono diverse TextBox e Combobox e Pulsanti (CommandButton) visibili e non.

tralasciando il resto del codice per tutta l'userform, ho un problema nell'assegnare un codice cliente progressivo col click su un determinato pulsante. Inoltre vorrei chiarimenti a riguardo il pulsante cancella contenuti textbox e combobox.

questi sono i codici scritti:

Codice: Seleziona tutto
Private Sub CommandButton7_Click()
TextBox12 = WorksheetFunction.Max(Range("ncodice")) + 1
CommandButton7.Visible = False
MsgBox "NUOVO CODICE CLIENTE ASSEGNATO"
End Sub

Codice: Seleziona tutto
Private Sub CommandButton8_Click()
For I = 2 To 13
UserForm1.Controls("TextBox" & I).Value = ""
Next
n = ListBox1.ListCount - 1
If n >= 0 Then
For Z = n To 0 Step -1
ListBox1.RemoveItem Z
Next
End If
n = 0 'si azzera la variabile indice riga listbox
Tot = 0 'si azzera il totalizzatore importi
Label13.Caption = 0 'si azzera la caption della label13
ComboBox1.Value = "" 'si cancella il cliente precedentemente selezionato
ComboBox3.Value = ""
ComboBox4.Value = ""
CommandButton7.Visible = True
MsgBox "DATI CANCELLATI"
End Sub


Mi spiego meglio: al click di commandbutton7, che è visibile solo quando in TextBox12 non c'è scritto nulla, bisogna assegnare un numero maggiorato di 1 rispetto al massimo valore del nome ncodice asegnato in excel ad una serie di valori (che ovviamente andranno da 1 a .....). Con quello che ho scritto a me ogni volta che clicco sul pulsante mi restituisce sempre 1, anche se in ncodice ci sono 2 clienti e di conseguenza due valori (1 e 2)...dovrebbe restituirmi 3.
Forse bisogna mettere qualche stringa per cancellare i dati memorizzati in TextBox12 visto che è utilizzata anche per altre funzioni, tipo visualizzare il codice di un cliente già registrato in archivio utilizzando la combobox1.
ncodice è una colonna sola in cui ci sono scritti i codici, accanto alle altre colonne in cui ci sono i dati del cliente.

Inoltre al clic di commandbutton8 dovrebbe cancellare tutti i dati inseriti, visualizzati, ecc. nelle textbox(da 2 a 12) e nelle combox (poichè l'ho scritto io,che come premesso non conosco bene il linguaggio, vorrei che ci deste un'occhiatina.

spero di essere stato chiaro.
vi ringrazio in anticipo per gli aiuti che spero verranno presto.
Piffero83
Newbie
 
Post: 2
Iscritto il: 12/04/11 18:14

Sponsor
 

Re: VBA e Excel

Postdi Piffero83 » 12/04/11 20:20

ragazzi Vi ringrazio comunque ma ho risolto.
Il codice inserito in commandbutton7 è corretto, solo che quando riportavo con un altro pulsante le textbox sul foglio excel ho notato che riportavo il tutto come testo e non come valore...quindi la worksheetfuncion.max non mi funzionava...dovevo riportare la textbox12 come .value ;)

grazie lo stesso
Piffero83
Newbie
 
Post: 2
Iscritto il: 12/04/11 18:14

Re: VBA e Excel

Postdi Anthony47 » 12/04/11 23:25

Ciao piffero83, benvenuto nel forum (e grazie per aver riportato la tua soluzione).

Alla prossima!
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "VBA e Excel":


Chi c’è in linea

Visitano il forum: Nessuno e 51 ospiti