Selezionare stessa riga listbox di listbox diverse.

Anonimo
2023-12-11T20:55:54+00:00

Buona sera a tutti,

Avrei necessità di una macro che faccia ciò:

Ho una multipage composta da 10 Page ed in ognuna delle nove page (no 10 una è esclusa) sono presenti una listbox e quando seleziono una riga di una delle 9 listbox le altre 8 devono selezionare la stessa riga, come posso fare?

Grazie per l'aiuto.

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

3 risposte

Ordina per: Più utili
  1. Anonimo
    2023-12-13T16:32:30+00:00

    Ciao di nuovo,

    È possibile utilizzare l'evento Change delle caselle di riepilogo per sincronizzare l'indice di selezione. Ciò significa che ogni volta che si seleziona una riga in una casella di riepilogo, le altre caselle di riepilogo selezioneranno automaticamente la stessa riga. A tale scopo, è possibile aggiungere un codice simile al seguente all'evento Change event1 di ogni casella di riepilogo:

    Private Sub ListBox1_Change() Dim i As Long For i = 1 To 10 If i 1 Then 'Change the number in modo che corrisponda al numero della casella di riepilogo Me.Controls("ListBox" & i <> ). ListIndex = ListBox1.ListIndex End If Next i End Sub

    Riferimento: https://www.mrexcel.com/board/threads/select-same-row-in-listbox-based-on-another-listbox-selected-row.1027848/ Nota: questo è un sito Web non Microsoft. La pagina sembra fornire informazioni accurate e sicure. Fai attenzione agli annunci sul sito che potrebbero pubblicizzare prodotti frequentemente classificati come PUP (prodotti potenzialmente indesiderati). Fai ricerche approfondite su qualsiasi prodotto pubblicizzato sul sito prima di decidere di scaricarlo e installarlo.***

    **Si prega di notare che questo link è in inglese e potrebbe essere necessario tradurlo nella propria lingua locale**

    Grazie Sola

    Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2023-12-11T22:26:35+00:00

    Ciao Shollybee,

    Scusa ma non ho capito molto bene ciò che hai postato. Se si può avere una spiegazione migliore te ne sarei grato.

    Grazie mille.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2023-12-11T21:59:13+00:00

    Ciao Danilo,

    Grazie per averci contattato,

    A tale scopo, è possibile utilizzare l'evento "Change" per la prima casella di riepilogo e quindi aggiornare l'indice selezionato per le altre caselle di riepilogo quando viene effettuata una selezione. Di seguito è riportato un esempio di come è possibile implementarlo in VBA:

    '''vba Sub privato ListBox1_Change() ' Aggiorna l'indice selezionato per altre caselle di riepilogo nella stessa pagina UpdateListBoxSelection ListBox1, ListBox2 UpdateListBoxSelection ListBox1, ListBox3 ' Aggiungi righe simili per altre caselle di riepilogo nella stessa pagina

    ' Ripetere la stessa procedura per le caselle di riepilogo in altre pagine, se necessario ' Ad esempio, se si dispone di ListBox1 in Page1 e ListBox10 in Page10, è possibile eseguire: « MultiPage1.Page, paragrafo 9. Controls("ListBox10"). ListIndex = ListBox1.ListIndex Fine sottomarino

    Sub UpdateListBoxSelection(sourceListBox come MSForms.ListBox, targetListBox come MSForms.ListBox) ' Aggiorna l'indice selezionato per la casella di riepilogo di destinazione in base alla casella di riepilogo di origine Se sourceListBox.ListIndex >= 0 Allora targetListBox.ListIndex = sourceListBox.ListIndex Fine se Fine sottomarino '''

    Per implementarlo:

    1. Aprire la cartella di lavoro di Excel.
    2. Premere 'Alt' + 'F11' per aprire l'editor VBA.
    3. Nell'editor VBA, trova il tuo modulo utente e apri la finestra del codice per il modulo.
    4. Copia e incolla il codice sopra nella finestra del codice.

    Sostituisci 'ListBox1', 'ListBox2' e così via con i nomi effettivi delle caselle di riepilogo.

    Questo codice presuppone che le caselle di riepilogo si trovino nella stessa pagina del controllo MultiPage. Se le caselle di riepilogo si trovano in pagine diverse di MultiPage, è necessario aggiornare il codice di conseguenza.

    Spero che questo aiuti!

    Se hai altre domande o hai bisogno di ulteriori chiarimenti, non esitare a chiedere!

    Saluti Sola

    Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.

    La risposta è stata utile?

    0 commenti Nessun commento