Domanda

Ok, quindi sono costantemente in lotta con Microsoft come sto creando diversi modelli per alcuni clienti. Il mio problema è questo, semplice segnaposto TextBox sparsi tutto intorno a un documento mi permette di premere TAB per passare alla successiva segnaposto. Molto simile ordine di tabulazione in Visual Studio. Ma per qualche strana ragione, questo non funziona con ricchi segnaposto casella di testo. E ho bisogno di utilizzare il testo ricco per un paio di caselle di testo perché l'utente dovrebbe essere consentito di modificare la formattazione dei singoli caratteri. Questo non è possibile con semplici caselle di testo.

Così ho pensato, potrebbe essere possibile utilizzare le macro? Ad esempio, se si seleziona un segnaposto casella di testo e la macro viene eseguita, passare alla successiva segnaposto?

È stato utile?

Soluzione

Gli oggetti Forma / TextBox si può accedere attraverso

ThisDocument.Shapes.Item(index)

e controllando l'oggetto Shape restituito per

theShape.Type = msoTextBox

Tuttavia, gli oggetti Shape verrà restituito nell'ordine in cui sono stati creati, non il loro ordine nella pagina / documento. Per trovare il 'prossimo' TextBox, si sono probabilmente andando ad avere per scorrere tutti TextBoxes e indagare la loro posizione (.Top, .Left ecc) al fine di trovare quella giusta per spostarsi con:

theNextShape.Select
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top