• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

vensters weergeven in een userform

Status
Niet open voor verdere reacties.

sharda002

Gebruiker
Lid geworden
21 mei 2010
Berichten
66
Hallo ik heb een probleem waar ik niet opgelost krijg.

ik wil een userform maken ( dat is niet zo moeilijk)
Maar daar in wil ik de namen van de werkmappen wergeven worden welke geopend zijn.
Eigenlijk wil ik het menu "venster" van de werkbalk weergeven in een userform.


john
 
een voorbeeldje,

Code:
Private Sub UserForm_Initialize()
Dim openXls As Workbook
For Each openXls In Excel.Workbooks
ComboBox1.AddItem openXls.Name
Next
End Sub

Niels
 
Niels dit bedoel ik inderdaad maar hoe open ik nu de werkmap(klikken) welke ik selecteer?
 
userform eigenschap show modal op false zetten.

Code:
Private Sub ComboBox1_Change()
Workbooks(ComboBox1.Value).Activate
End Sub

Niels
 
Niels dat werkt helemaal goed nog een vraagje ( ben nu 3 uren bezig)
hoe krijg ik het menu automatisch uitgeklapt? ik druk nu op het pijltje rechts van de combobox en dan rolt de lijst eronder uit.
En hoe update de combobox automatisch als ik een werkblad extra opent( ik moet nu afsluiten en de combobox opnieuw openen.

alvast bedankt
 
Gebruik een listbox ipv combobox om de lijst geheel te zien.

Code:
Private Sub listBox1_Change()
Workbooks(ListBox1.Value).Activate
End Sub
Private Sub UserForm_Initialize()
Dim openXls As Workbook
For Each openXls In Excel.Workbooks
ListBox1.AddItem openXls.Name
Next
End Sub


Voor het updaten kun je een knop op de userform zetten om te refreshen.

Code:
Private Sub CommandButton1_Click()
Unload Me
UserForm1.Show
End Sub

Niels
 
Laatst bewerkt:
dat kan handiger lijkt me:

Code:
Private Sub UserForm_Initialize()
   A_lijst
end sub

Private sub A_lijst()
  redim sn(workbooks.count-1)
  
  for j=1 to workbooks.count
    sn(j-1)=workbooks(j).name
  next
  listbox1.List=sn
end sub

Private Sub listBox1_Change()
   Workbooks(ListBox1.Value).Activate
End Sub

Private Sub knop_ververs()
  A_lijst
end sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan