Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: Listbox naar ander sheet  (gelezen 9091 keer)

0 leden en 1 gast bekijken dit topic.

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Listbox naar ander sheet
« Gepost op: 04 september 2015, 16:15:37 »
hallo,
in het kader van mijn project fietsen (reeds meerdere vragen gesteld).
uit mijn excel file exporteer ik enkele sheets, die ik dan naar mijn fietsvrienden stuur.

nu heb ik ergens een listbox die ook moet gecreeerd worden in dat nieuwe bestand.
de listbox creeren lukt me, maar ik krijg hem niet ingevuld.

dit is mijn vba

Sheets("TestListbox").Select
    ActiveSheet.OLEObjects.Add(ClassType:="Forms.ListBox.1", Link:=False, _
        DisplayAsIcon:=False, Left:=818.25, Top:=121.5, Width:=99, Height:= _
        267.75).Select
       
        With ListBox1
        .AddItem "Armand"
        .AddItem "Danny"
        .AddItem "Eddy"
        End With

in bijlage een voorbeeld.

kan iemand mij helpen?
Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Re: Listbox naar ander sheet
« Reactie #1 Gepost op: 05 september 2015, 07:25:33 »
misschien nog een verduidelijking.
in mijn voorbeeld maak ik met commandbutton op sheet 1 een listbox op sheet2.
op sheet 2 kan ik die listbox dan opvullen met een commandbutton op sheet2.

graag zou ik deze beweging in één keer maken.

of een bestaande listbox, met alles erin, copiëren naar die nieuwe sheet.

heb al veel geprobeerd, maar het blijft steeds hangen bij "with listbox.additem".
Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline firmin

  • Ervaren lid
  • ***
  • Berichten: 442
  • Geslacht: Man
  • Excel Specialist
Re: Listbox naar ander sheet
« Reactie #2 Gepost op: 05 september 2015, 09:54:56 »
Adri,

De code voor het aanmaken van een nieuwe listbox geeft het probleem.
Telkens u op blad1 de commandbutton klikt krijgt de listbox op het andere blad een nieuw nummer.
listbox1   listbox2 enz.
In uw code additem staat er listbox1, zodoende krijg je een foutmelding.

Firmin
PB easynote LE69KB,AMD quad-core,1000GB HDD,AMD Radeon HD8330,8GB DDR3
Windows 10,office 2007
MSE, Internet Explorer 11

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Re: Listbox naar ander sheet
« Reactie #3 Gepost op: 05 september 2015, 10:27:50 »
bedankt voor de reactie.
het is inderdaad zo dat er telkens je de code op sheet1 uitvoert de nieuwe listbox een volgend nummer krijgt.
maar in mijn echte project is de betreffende sheet steeds blanco, dus daar speelt dit probleem niet.

mijn issue is echter: als sheet2 blanco (wat in mijn project het geval is) om dan de listbox in te vullen met de namen.
nu lukt dat met de button op sheet2, maar ik zou dat bij in de code van de button op sheet2 willen.

probeerde code al in te geven als de sheet active is of before click....

precies dat het object eerst moet geactiveerd of .... worden.

Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline dizzl

  • Ambassadeur
  • *****
  • Berichten: 2.345
  • I've Upped my standards,now,up yours!
Re: Listbox naar ander sheet
« Reactie #4 Gepost op: 05 september 2015, 16:44:37 »
Dit werkt bij mij.
Private Sub CommandButton1_Click()
    Dim myListBox As New OLEObject
   
    Dim DeListBoxBestaat As Boolean
    DeListBoxBestaat = False
   
    'we lopen alle controls af van de active sheet => Als deze al bestaat zetten we DeListBoxBestaat op WAAR
    For Each ctl In ActiveSheet.OLEObjects
        If TypeOf ctl.Object Is MSForms.ListBox And ctl.Name = "ListBox1" Then 'is het een listbox en noemt hij ListBox1 ?
           
            DeListBoxBestaat = True
           
        End If
    Next ctl
   
    'Maak de Listbox aan als hij nog niet bestaat
    If DeListBoxBestaat = False Then
        Set myListBox = ActiveSheet.OLEObjects.Add(ClassType:="Forms.ListBox.1", Link:=False, _
                DisplayAsIcon:=False, Left:=816, Top:=90.75, Width:=93, Height:=223.5)
        myListBox.Name = "ListBox1"
    Else
        Set myListBox = ActiveSheet.OLEObjects("ListBox1")
    End If
   
    'Maak de listbox leeg
    myListBox.Object.Clear
     
    'Opvullen van de listbox
    With myListBox.Object

            .AddItem "Armand"
            .AddItem "Danny"
            .AddItem "Eddy"
    End With

End Sub
Systeem  : Intel Core i5-4440 3.1Ghz, 3.1GHz 16Giga Ram 64Bits
Software : Windows 10 professional, Avira, Office 2016 Professional

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Re: Listbox naar ander sheet
« Reactie #5 Gepost op: 06 september 2015, 07:48:11 »
nog maar eens bedankt dizzl.
hier heb ik lang naar gezocht, maar dit is wat ik nodig had.
heb nog wel 'ctl' moeten benoemen : dim ctl as control'

ga het nu uitproberen op mijn project fietsen.
Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Re: Listbox naar ander sheet
« Reactie #6 Gepost op: 07 september 2015, 10:44:26 »
correctie: moet zijn : dim ctl as object.

nog een vraagje: kan ik ook rechtstreeks met vba de link aan geven naar welke cel de listbox refereert?
Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Re: Listbox naar ander sheet
« Reactie #7 Gepost op: 07 september 2015, 11:24:50 »
probeer dit nu ook toe te passen on mijn project fietsen.

daar is het de bedoeling dat elke deelnemers zijn ritten kan zien via een listbox met namen.
ik kopieer dus van mijn eigen 'hoofdworkbook' enkele sheets  naar een nieuw workbook voor mijn vrienden.
de listbox word aangemaakt, maar niet gevuld.
als ik dan in de nieuwe sheet een commandbutton toevoeg met de code van dizzl dan vult de listbox zich met de waarden.

hoe kan ik dit oplosssen?
Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.277
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Listbox naar ander sheet
« Reactie #8 Gepost op: 07 september 2015, 12:28:17 »
Kan je het bewuste workbook ff plaatsen als bijlage? Dan kunnen we als helpers zien waar je mee bezig bent....  ;)
______________________________

Groet, Leo

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Re: Listbox naar ander sheet
« Reactie #9 Gepost op: 07 september 2015, 12:56:19 »
hierbij een deel van mijn workbook met de desbetreffende sheet.
twee knoppen: listbox en export.
listbox creëert dus de listbox.
export zal niet werken omdat die verwijst naar meerdere onderdelen, maar toont wel wat allemaal de bedoeling is.

de listbox code moet dus eigenlijk bij de export knop komen.
maw exporteer de sheet MET de oorspronkelijke listbox naar een nieuw sheet van een nieuw workbook OF creëer
op dat nieuwe sheet een listbox met de namen, gerelateerd naar cel R3, met update X module.

met de huidige code is er al een nieuwe listbox op dat nieuwe sheet, maar hij is niet ingevuld.
Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.277
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Listbox naar ander sheet
« Reactie #10 Gepost op: 08 september 2015, 20:42:05 »
Waarom in vredesnaam deze Listbox? Wat wil je daarmee bereiken? Waarom niet een Validatie Listbox? Want ik gok dat je 'm wil inzetten in cel R3?
En waarom stuur je niet simpelweg je "hoofd-workbook" rond? Ofwel, waarom al dat kopiëren?
Sorry, ik wíl je wel helpen, maar snap volledig niet wat je wilt bereiken met je project.
______________________________

Groet, Leo

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Re: Listbox naar ander sheet
« Reactie #11 Gepost op: 09 september 2015, 08:18:15 »
je kan natuurlijk discussiëren over het nut van al dat gedoe.
maar ik wil de voor hen relevante dingen tonen en aanpassen en niet mijn sheets om alles in te geven.

het is eerder veel trial and nog meer error.
en zo veel ken ik nu ook weer niet van vba.

misschien had ik dit ook beter in access gemaakt, enz enz.

mijn vraag is in deze echter of het mogelijk is om een 'ingevulde' listbox te copiëren naar een ander workbook.
of beter een validatielistbox gebruiken, maar wat is het verschil en hoe gaat dat dan.

Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline adri

  • Ervaren lid
  • ***
  • Berichten: 421
  • Geslacht: Man
  • De Oplossing!
Re: Listbox naar ander sheet
« Reactie #12 Gepost op: 09 september 2015, 15:53:08 »
toch nog maar even nagedacht over voorstel van redhead.
als ik dan een soort backup bestand maak van mijn hele hoofd-workbook, kan ik dan sheets en bv knoppen op mijn startform verbergen?
nu sla ik dat bestand voor mijn vrienden op als :

      ActiveWorkbook.SaveAs ("C:\Users\Staf\Desktop\Fietsen\Statistieken\") & "Statistieken" & Format(Now, "dd-mm-yy-hhumm") & ".xls", _
    FileFormat:=56, CreateBackup:=False

bedoeling zou dus zijn om dat bestand te openen met startform waar een aantal knoppen disabled of invisible zijn.

en met een beperkt aantal sheets op dat nieuwe bestand.

zoiets als : on open workbook met de nieuwe naam, verberg sheet 2, disable commandbutton3........
Asus k750jb.
Windows 10 Home   NLD 64bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz 2401
X750JB
NVIDIA GeForce GT 740M        2048MB 1600 x 900
Realtek High Definition Audio
Nr: 1 Model: PLEXTOR PX-256M5S
C:\ NTFS 183,18GB 6,54GB 12 173MB
AV: AVG
FW: Windows Firewal Enabled: True

Offline dizzl

  • Ambassadeur
  • *****
  • Berichten: 2.345
  • I've Upped my standards,now,up yours!
Re: Listbox naar ander sheet
« Reactie #13 Gepost op: 09 september 2015, 16:11:38 »
Onafgezien van wat je wilt bereiken zou ik voor de kolommen vaste namen nemen.
Kolom1=Ritnummer
Kolom2=Eddy
kolom3=LucN
kolom4=michel enz...

Als zo'n persoon aan een rit meedoet, kan je op deze zij een X of een 1 zetten. Als de persoon niet mee doet staar er niets of een 0.
Zo kan je onder elke rit al makkelijk een overzicht maken hoeveel ritten een persoon deed.

Kan je eens in slow motion uitleggen wat je wilt doen?
Ongetwijfeld ben je een intelligent persoon. Het probleem met zo'n mensen is dat ze er van uit gaan dat iedereen hun gedachtegang kan volgen.
In mijn ervaring gaan ze het ook vaak verder zoeken dan nodig is.




Systeem  : Intel Core i5-4440 3.1Ghz, 3.1GHz 16Giga Ram 64Bits
Software : Windows 10 professional, Avira, Office 2016 Professional

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.127
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Listbox naar ander sheet
« Reactie #14 Gepost op: 09 september 2015, 16:28:13 »
hallo adri,

voor de goede verstandhouding: heeft huidig topic uitstaans met het topic "zoeken-welke-rit-wie-heeft-gereden"?

:) SoftAid :)             
Maximum grootte bijlagen vergroot naar 4 MB
Dubbelposten, het posten op verschillende forums van dezelfde vraag, dient op
voorhand gemeld te worden, met een link naar het topic op de andere site.
Overtreding van deze regel kan bestraft worden met verbanning !

 


www.combell.com