| Formato data, alliena testo. di
Visitorsvba |
Ciao ragazzi, in caselle di testo di una
userform, come si fa a dare un formato data di questo tipo
10-ott-06? e, poi, come si allinea il testo (sinistra, centro,
destra)? il tutto andrà a finire sul foglio elettronico.
grazie
|
|
| di Enzo |
Penso che dovresti fare cosi' all'interno della
textbox che in questo esempio e' la textbox1 dovresti copiare queste
due istruzioni descritte qui sotto la prima nel momento in cui
digiti la data dovrebbe dividere la data da un trattino e la seconda
dovrebbe far si che nel momento in cui ti sposti fuori dalla textbox
la data all'interno si trasforma nel tipo che avevi richiesto
per quanto riguarda l'allineamento clicchi sulla textbox con il
tasto destro del mouse richiami le propieta' a destra dello schermo
vedrai comparire tutte le proprieta' della textbox vai alla voce
textallign e selezioni quello che vuoi "destro centro sinista"
spero di essere stato chiaro e fa sapere se funziona
Private Sub TextBox1_Change()
X = Len(TextBox1)
Y = LTrim(TextBox1.Text)
If X = 2 Then TextBox6 = Y & "-"
If X = 5 Then TextBox6 = Y & "-"
If X = 8 Then
UserForm1.TextBox1.SetFocus
End If
End Sub
'''''''''''''''''''''''''''''''''''''''''
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox1 = Format(TextBox1, "d-mmm-yy")
End Sub
| |
|
| di Enzo |
'''correzione ''' le proprieta' appaiono per
default sulla sinistra dello schermo |
|
| di Apoben64 |
Oltre a ciò che ti ha detto enzo, puoi usarla anche
dopo aver digitato la data. invece per l'allineamento della
txtbox, puoi andare nel vba della txtbox , premere f4 (proprietà
della txtboc) e poi settare -textalign- come desideri . ciao
luca
Private Sub TextBox1_AfterUpdate()
TextBox1 = Format(TextBox1, "dd/mm/yy")'o il formato che vuoi
End Sub | |
|
| Formato data di
Visitorsvba |
Intanto grazie, come al solito, per l'aiuto che mi
date. non rispondo subito solo perchè non accendo sempre il pc.
ritornando al codice formato data non mi dà il formato che
desideravo, cioè 10-ott-06 come appare sulla cella di un foglio
dando come formato data quel tipo di formato. io volevo
impostare a priore quel tipo di formato senza formattare le celle.
ci sono altre strade? |
|
| di Apoben64 |
Prego visitorsvba a contattarmi , utilizzando
la sezione contatti , grazie.
|
|
| Formattazione di
Visitorsvba |
Scusate ragazzi, forse mi sono espresso male.
voglio formattare il testo (testo a capo, allineamento, ecc.
come si fa da formato cella da excel)i dati inseriti dalla userform
sul foglio di lavoro. grazie |
|
| Formattare di
Visitorsvba |
Esempio inserisce il "nome" nella cella di un
foglio: ... worksheets("arclienti").cells(irow, 1) =
ucase(txtboxcognomenome) ... questo dato deve essere: 1)
testo a capo (come da formato - cella - allineamento - testo a capo)
2) allineamento testo verticale al centro (come da formato -
cella - allineamento testo - verticale - al centro) 3) una riga
orizzontale per separarsi con il prossimo dato (come da formato -
cella - bordo - riga continua in basso) mi sapete aiutare???
grazie
|
|
| di Enzo |
Inserisci questo
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
Selection.Borders(xlEdgeTop).LineStyle = xlNone
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Selection.Borders(xlEdgeRight).LineStyle = xlNone | |
|
| Formattazione di
Visitorsvba |
Grazie per la risposta. puoi spiegarmi il
seignificato di ogni riga di codice?
grazie |
|
| di Enzo |
Un consiglio che ti posso dare quando vuoi
formattare una cella alinearla etc utilizza il registratore di
macro una volta creata la macro la visioni con l'editor vba e
vedu quello che ti costruisci per quanto rigurada il signifiato
di ogni riga sarebbe meglio che cominciassi a visionare il corso
base di vba presente nel forum.
|
|
| di Visitorsvba |
In che punto del codice devo inserirlo?
'inserimento dati nell'archivio clienti irisposta =
msgbox("vuoi inserire " _ & txtboxcognomenome.value & "
nell'archivio clienti?", vbyesno) if irisposta = vbyes then
foglio18.activate dim irow as integer irow = 2 while
cells(irow, 1).value <> "" irow = irow + 1 wend
worksheets("arclienti").cells(irow, 1) =
ucase(txtboxcognomenome) worksheets("arclienti").cells(irow, 2)
= ucase(txtboxresidenza) ... ... msgbox "ok dati
inseriti sul foglio" ... ...
|
|
| di Enzo |
Subito dopo l'istruzione che scrive il testo nella
cella
|
|
| di Visitorsvba |
Forse sbaglio qualcosa ma cosi non funziona
dove l'errore??? irisposta = msgbox("vuoi inserire " _
& txtboxcognomenome.value & " nell'archivio clienti?",
vbyesno) if irisposta = vbyes then foglio18.activate dim
irow as integer irow = 2 while cells(irow, 1).value <>
"" irow = irow + 1 wend
worksheets("arclienti").cells(irow, 1) =
ucase(txtboxcognomenome) worksheets("arclienti").cells(irow, 2)
= ucase(txtboxresidenza) ... with selection
.horizontalalignment = xlgeneral .verticalalignment =
xlcenter .wraptext = true .orientation = 0 .addindent =
false .shrinktofit = false .mergecells = false end with
selection.borders(xldiagonaldown).linestyle = xlnone
selection.borders(xldiagonalup).linestyle = xlnone
selection.borders(xledgeleft).linestyle = xlnone
selection.borders(xledgetop).linestyle = xlnone with
selection.borders(xledgebottom) .linestyle = xlcontinuous
.weight = xlthin .colorindex = xlautomatic end with
selection.borders(xledgeright).linestyle = xlnone msgbox "ok
dati inseriti sul foglio"
|
|
| di Enzo |
Nelle true istruzioni gia' vedo che hai un blocco
if senza la sua chiusura (end if) prova a inviare il file
utilizzando la sezione scambio file e vediamo che si puo' fare |
|
| di Enzo |
| Eventualmente inserisci anche una descrizione |
|
| di Visitorsvba |
Riscrivo il codice: 'inserimento dati
nell'archivio clienti irisposta = msgbox("vuoi inserire " _
& txtboxcognomenome.value & " nell'archivio clienti?",
vbyesno) if irisposta = vbyes then foglio18.activate dim
irow as integer irow = 2 while cells(irow, 1).value <>
"" irow = irow + 1 wend
worksheets("arclienti").cells(irow, 1) =
ucase(txtboxcognomenome) worksheets("arclienti").cells(irow, 2)
= ucase(txtboxresidenza) ...altri dati simili a sopra with
selection .horizontalalignment = xlgeneral
.verticalalignment = xlcenter .wraptext = true
.orientation = 0 .addindent = false .shrinktofit = false
.mergecells = false end with
selection.borders(xldiagonaldown).linestyle = xlnone
selection.borders(xldiagonalup).linestyle = xlnone
selection.borders(xledgeleft).linestyle = xlnone
selection.borders(xledgetop).linestyle = xlnone with
selection.borders(xledgebottom) .linestyle = xlcontinuous
.weight = xlthin .colorindex = xlautomatic end with
selection.borders(xledgeright).linestyle = xlnone msgbox "ok
dati inseriti sul foglio" end if end sub cosi facendo mi
mette una linea solo sulla prima cella e non su tutta la riga |
|
| di Visitorsvba |
| L'esempio lo trovi su scambi ofiles |
|
| di Enzo |
Scusa ma non ci siamo capiti quando ti viene
richiesto un file di esempio e per avere il codice sul quale
lavorare.... .........tu hai inviato una foto del file excel????
|
|
| di Enzo |
Comunque ho simulato un qualcosa di simile e ti ho
scritto il codice qui sotto ho creato una userform con una
textbox (textbox1) e un commandbutton all'interno del quale ho
inserito il comando descritto qui sotto il comando non fa altro
che andare sul foglio excel, posizionarsi sulla cella a1 dove e'
indicato il campo cognome o nome o quello che vuoi scendendo
trova la prima riga vuota inserisce il contenuto della textbox e fa
tutte le istruzioni che avevi chiesto ora adattala alle tue
esigenze bye
'VAI IN A1 DOVE HAIL IL CAMPO COGNOME
Range("A1").Select
'SCENDI FINO A TROVARE LA PRIMA RIGA VUOTA
Do
ActiveCell.Offset(1).Select
Loop Until ActiveCell.Value = ""
ActiveCell.Value = UserForm1.TextBox1.Value
'ISTRUZIONE PER TESTO A CAPO
' E PER L'ALLINEAMENTO
With Selection
.WrapText = True
.VerticalAlignment = xlCenter
End With
'SELEZIONA IL BORDO O LA LINEA IN BASSO
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
Selection.Borders(xlEdgeTop).LineStyle = xlNone
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Selection.Borders(xlEdgeRight).LineStyle = xlNone
End Sub
| |
|
| Grazie di Visitorsvba |
Grazie per la tua risposta e scusa se non ho
mandato un file di esempio, ma quello che ho è l'intero progetto.
comunque ho provato ma non funziona, forse perchè
l'inserimento dati della userform va a finire in un'altro foglio
(arclienti).vedi esempio precedente. mentre tu fai l'esempio sullo
stesso foglio. si può adeguare? |
|
| di Enzo |
Ti sposti sul foglio che vuoi e se non ho capito
male nel tuo esempio e' sheets("foglio18").select
range("a1").select |
|
| di Visitorsvba |
Grazie per l'aiuto che mi stai dando. la riga
la fa solo sul bordo inferiore di una cella e non di tutta la riga
(cioè 3 colonne)
come si fa? |
|
| di Enzo |
Si in quanto il comando va sulla riga iniziale
scende sino alla prima cella vuota inserisce in quella casella
il testo e successivamente tira la riga allinea etc quando dai
istruzione in un altra colonna es. quella a fianco e inserirai i
nuovi dati alla fine gli fai fare la stessa cosa. il problema si
risolveva se allegavi come ti ho gia' detto il file anche se e'
un progetto lungo invialo con le spiegazioni che ti servono |
|
| Domanda non pertinente di
Edomar |
Mi avete aiutato per risolvere problemi excel e non
ringrazierò mai abbastanza.
mi faccio vivo qui perchè ho
visto che ci sono interventi dei più esperti, anche se non sono in
tema.
domanda: dove posso trovare per access un sito simile
a questo ? debbo accertare se in access è possibile ottenere il
lampeggio celle sui reports. saluti. edo |
|
| Enzo di Visitorsvba |
Ti allego un file di esempio.
grazie
ancora. |
|
| di Visitorsvba |
Te ne allego un'altro per completare una parte che
non riesco a fare.
grazie |
|
| di Enzo |
Ti ho inviato un file dal nome backup dove penso di
aver risolto il discorso relativo al pulsante di backup per il
primo dammi del tempo bye fa sapere se va bene |
|
| di Visitorsvba |
Grazie gentilissimo. ti ho rimanda il file show
2.xls per farti vedere alcuni dettagli mancanti.
grazie
ciao |
|
| di Visitorsvba |
Ok fatto per la data. comunque ti rimando il
file per migliorare alcune cose.
si chiama "formato + email
+ backup.xls" e le domande sono sul foglio.
ciao e
grazie 1000 per l'aiuto.
6 un grande |
|
| di Enzo |
Ti ho inviato un file che si chiama piu' fogli dove
salvi piu' fogli lavoro bye |
|
| di Visitorsvba |
Confermo che 6 un grande. ok funziona
per completare il lavoro manca solo come mettere i bordi.
vedi sempre quel file.
ciao |
|
| di Enzo |
Ti ho inviato un file che si chiama definitivo
ogni volta che azioni il foglio1 nelle celle da 4 a 65000 per le
colonne a b e c se incontra celle piene ti inserisce una linea in
alto e una in basso quindi ti avevo cancellato un po di cose per
controllarlo bye spero sia finito
|
|
| Grazie!!! di
Visitorsvba |
Grazie 1000. rallanta un pò. comunque è ottimo.
un ultima domanda: sui fogli all'attivazione ho inserito il
seguente codice:
private sub worksheet_activate() with
activewindow .displayheadings = false .displayworkbooktabs =
false end sub questioni di sucurezza sul file originale.
adesso, come posso fare in modo che sul file di backup dove
sono presenti quei fogli renderli "true" o dimmi tu un'alternativa.
grazie di tutto |
|
| Autoeleminazione di
Visitorsvba |
Ahh!! un'altra cosa. un file xls alla sua
chiusura si può eliminare automaticamente (cioè da codice) da solo?
se si qual'è il codice vba e dove inserirlo?
grazie
grazie |
|
| Incorpora("forms.commandbutton.1";"")
di Visitorsvba |
Avrei risolto mettente sul foglio elettronico un
pulsante di comando nascosto per default che appare quando il nome
del file.xls di backup contenente il foglio è diverso da quello
originale.
da codice come si fa a far apparire un pulsante
di comando(impostato: visible=false)che si trova sul foglio?
mi aiuti?
|
|
| Testo a capo in celle unite di
Visitorsvba |
Buongiorno a tutti, come faccio a fare da
worksheet_activate) testo a capo in celle unite?
l'esempio
in scambio files:
fax-testo a capo in celle unite.xls
|
|
| Importazione dati da file.xls
esterno di Visitorsvba |
Buongiorno ragazzi, grazie all'ottimo aiuto di
enzo ho creato un pulsante che mi creava un file di backup con
dentro i fogli da salvare.
adesso vorrei fare il contrario,
cioè un pulsante che ripristina i dati del file backup sul foglio
del file origine.
come posso fare?
|
|
| Nuova discussione di
Visitorsvba |
Scusate ragazzi ma ho aperto una nuova discussione
sui miei 3 punti precedenti altrimenti non si capiva.
grazie
a tutti per le risposte e sopratutto (negli ultimi giorni) ad enzo e
al moderatore che sono stati di grande aiuto e cordiali con me.
un saluto |