pulsante immobile sempre visibile
Hai un problema con Excel? 
pulsante immobile sempre visibile
di benjamin (utente non iscritto) data: 13/12/2016 13:04:19
buongiorno,
avrei bisogno di sapere se è possibile avere un pulsante che mi riporti al foglio menu (dove ci sono tutti i bottoni per accedere ai vari fogli del file) sempre visibile in alto nell'angolo destro del foglio.
il problema è che, in un foglio, ho una tabella con parecchie righe che mi occupa tutta la pagina ed un pulsante che rimane fisso anche quando si scorre con la rotella del mouse su e giu mi farebbe molto comodo.
a voi l'ardua sentenza
grazie
di alfrimpa data: 13/12/2016 13:28:14
Ciao benjamin
Credo che tu possa risolvere solo con il Blocca Riquadri posiziinando i pulsanti nella zona bloccata.
Alfredo
di benjamin (utente non iscritto) data: 13/12/2016 15:23:37
Salve alfrimpa,
grazie per la tua risposta.
purtroppo non posso fare come dici.
non ho uno spazio libero nel foglio dove poter posizionare il bottone e soprattutto quando si scende tra le righe della tabella il problema è dover tornare su per ritornare al foglio del menu. Non è possibile tornare ad un foglio con un pulsante nella barra degli strumenti o simile? se non sbaglio, mi sembra sia possibile assegnare una macro a un bottone nella barra degli strumenti, è così?
aspetto vostre istruzioni e grazie per il vostro tempo
di Marius44 data: 13/12/2016 15:32:33
Ciao Benjamin
l'amico alfrimpa (ciao Alfredo) ha ragione.
Normalmente nei fogli la prima riga è occupata dalle intestazioni. Bene, blocca questa riga, allargala quanto basta e mettici dentro il pulsante per tornare su.
Ciao,
Mario
di alfrimpa data: 13/12/2016 15:34:10
Per quanto ne sappia altre strade non ne esistono almeno sul foglio.
Potresti costruirti una userform con i pulsanti con le macro collegate e farla funzionare come una sorta di commandbar.
In questo modo la userform rimarrà sempre fissa.
Tra qualche minuto ti posto un esempio.
Alfredo
di alfrimpa data: 13/12/2016 15:40:37
Benjamin ti ho allegato un file per farti capire meglio cosa intendo.
Ovviamente va scritto il codice da associare ai pulsanti che sono nella userform.
Poi ci sono anche altri sistemi come ad esempio aggiungere i pulsanti alla barra multifunzione di Excel ma andiamo nel "complicato".
Alfredo
di benjamin (utente non iscritto) data: 13/12/2016 16:07:43
alfrimpa,
grazie. simpatico l'userform. solo vorrei capire come fare per collegare i pulsanti ai vari fogli.
mentre per i pulsanti nella barra multifunzione di Excel, è davvero cosi complicato?
saluti
di alfrimpa data: 13/12/2016 16:11:21
Se premi ctrl+m la userform ti apparirà comunque.
Poi nel codice da attribuire ai vari pulsanti occorrerà, se del caso, fare le differenze.
Se alleghi un file di esempio dove spieghi le tue necessità possiamo provare a vedere.
Alfredo
di benjamin (utente non iscritto) data: 13/12/2016 16:48:36
alfrimpa,
allego file di esempio.
il file originale ha 22 fogli. il primo è un menu (come nel file di esempio).
il problema è che una volta entrati nel foglio 1 o foglio 2, come sono completamente occupati dalle tabelle, non ho spazio per inserire un pulsante per tornare al foglio menu.
questo è il piccolo problema che mi succede solo con 2 fogli (tabelle che occupano l'intera pagina) su 22.
spero tu mi possa aiutare.
di alfrimpa data: 13/12/2016 17:40:08
Ora sono fuori al più tardi domani guardo il tuo file
Alfredo
di benjamin (utente non iscritto) data: 14/12/2016 08:51:41
perfetto. grazie mille Alfrimpa.
Saluti
di benjamin (utente non iscritto) data: 14/12/2016 10:56:28
buongiorno alfrimpa,
penso di aver risolto con il file allegato (esempio).
volevo solo domandare se è possibile che no selezioni automaticamente l'userform al selezionare i fogli.
Mi spiego meglio, quando si passa al foglio 2 o foglio 3, salta automaticamente l'userform e per scorrere il foglio bisogna forzosamente selezionare una cella.
è possibile che salti in primo piano automaticamente l'userform e che pero selezioni automaticamente il foglio per poter subito operare su di esso senza la necessità di selezionare alcuna cella?
grazie
di alfrimpa data: 14/12/2016 11:26:33
Ciao Benjamin
Non ho ben capito ma prova a vedere l'ultimo file allegato benjamin1.xlsm
Alfredo
di benjamin (utente non iscritto) data: 14/12/2016 11:44:39
alfrimpa,
il file che hai allegato è perfetto.
se guardi quello che ho allegato io, è piu o meno lo stesso.
come hai fatto a posizionare automaticamente l'userform in alto a sinistra?
riguardo il mio post precedente, quando selezionamo la pagina 1 o 2 del tuo file, salta in primo piano l'userform e la pagina resta in secondo piano (bisogna selezionare una cella con il mouse per portare in primo piano dinuovo il foglio ed in secondo piano l'userform) per esempio con la rotella del mouse la pagina non scorre verso il basso o alto se non si seleziona prima una cella.
esiste il modo di, una volta selezionata la pagina 2 o 3, portare autimaticamente il foglio in primo piano ed l'userform in secondo?
saluti
di alfrimpa data: 14/12/2016 14:35:22
Ciao Benjamin
Cit. "come hai fatto a posizionare automaticamente l'userform in alto a sinistra?"
C'è una specifica proprietà della userform "StartUpPosition" che va impostata a seconda di dove si vuole che questa compaia sullo schermo.
Per quanto riguarda la tua seconda domanda temo che tu debba compiere "l'immane sforzo" di fare un clic su una cella perché non credo che ci sia modo di fare diversamente.
Qualora fossi smentito non mancherò di fartelo sapere.
Alfredo
di alfrimpa data: 14/12/2016 15:36:25
Benjamin in effetti il modo ci sarebbe ma occorre "scomodare" le API di Windows e per evitare un semplice clic sul foglio mi sembra veramente troppo
E' come sparare ad un moscerino con un bazooka
Alfredo
di alfrimpa data: 14/12/2016 15:43:30
Altra ipotesi sarebbe quella di aggiungere la macro alla barra multifunzione ma in questo caso sarebbe presente in tutti i file che vai ad aprire.
Alfredo
di benjamin (utente non iscritto) data: 15/12/2016 08:19:55
buongiorno alfrimpa,
penso che mi accontenterò di dover cliccare in una cella per non complicare più di tanto le cose.
ho impostato la propietà StartUpPosition su manual pero adesso non so come far si che ricordi la posizione che voglio.
potresti darmi una mano?
Saluti
di alfrimpa data: 15/12/2016 10:12:22
Ciao Benjamin
Prova con il nuovo file allegato benjamin2.xlsm.
Cit. "ho impostato la propietà StartUpPosition su manual pero adesso non so come far si che ricordi la posizione che voglio."
Non ho capito; puoi spiegare meglio?
Alfredo
di benjamin (utente non iscritto) data: 15/12/2016 10:21:40
salve alfrimpa,
perfetto grazie per il nuovo file.
per il discorso posizione form alla fine ho capito come muoverlo :)
ho anche impostato che all'aprire il libro vada sempre alla prima pagina (quella dei menu).
solo una cosa, se chiudo il libro (salvando) in un qualsiasi foglio, al riaprire il libro si vede per un secondo la pagina e poi automaticamente torna a la pagina dei menu.
non esiste il modo che non si veda il passaggio (anche se già veloce) dall'ultimo foglio al foglio dei menu?
grazie
di alfrimpa data: 15/12/2016 10:32:22
Cit. "solo una cosa, se chiudo il libro (salvando) in un qualsiasi foglio, al riaprire il libro si vede per un secondo la pagina e poi automaticamente torna a la pagina dei menu."
Onestamente non capisco io non vedo nulla di tutto questo.
Alfredo
di benjamin (utente non iscritto) data: 15/12/2016 10:51:19
alfrimpa,
allego file "esempio2". ho immesso una macro che apre sempre il foglio1 anche se si salva un altro foglio chiudendo precedentemente il file.
nel file allegato che non contiene nulla, quasi non si vede l'effetto descritto nel mio post precedente, pero nel mio file originale si.
non esiste un modo per ottimizzare / velocizzare una macro?
saluti
di ges data: 15/12/2016 12:39:49
Un saluto a tutti e in particolare agli amici con cui ci troviamo su altri forum.
Un possibile soluzione per avere un pulsante mobile è quella di legarlo ad una condizione del foglio, tra cui per esempio l'ultima riga piena.
Posto il codice e allego il file
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim uRiga As Long
uRiga = Cells(Rows.Count, 1).End(xlUp).Row
With Me
.CommandButton1.Top = .Range("F" & uRiga).Top
.CommandButton1.Left = .Range("F" & uRiga).Left
End With
End Sub
|
di benjamin (utente non iscritto) data: 15/12/2016 13:56:45
alfrimpa in questo caso basta aggiungere questa riga nel foglio dove apparirà l'userform:
AppActivate Application.Caption
lascio la macro di esempio qui giù che mostra l'userform quando si attiva il foglio.
saluti
Private Sub Worksheet_Activate()
Userform1.Show
AppActivate Application.Caption
End Sub |
Vuoi Approfondire?