Help!

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

Hulp bij posten

Recente topics

Auteur Topic: Snelle macro  (gelezen 10238 keer)

0 leden en 1 gast bekijken dit topic.

Offline tonnie

  • Volledig lid
  • **
  • Berichten: 104
  • Geslacht: Man
  • Oplossing.be
Snelle macro
« Gepost op: 18 augustus 2018, 14:51:42 »
Beste mensen,

Hier zitten er 30 van in een macro kan dat sneller?

If Sheets("Werkomschrijving").Range("o11").Value = Sheets("gegevens").Range("h15").Value Then
    Sheets("gegevens").Range("k15").Value = Sheets("Werkomschrijving").Range("l14").Value
    End If
    If Sheets("Werkomschrijving").Range("o11").Value = Sheets("gegevens").Range("h16").Value Then
    Sheets("gegevens").Range("k16").Value = Sheets("Werkomschrijving").Range("l14").Value
    End If

Grt Tonnie

Offline JeanPaul

  • Volledig lid
  • **
  • Berichten: 116
  • Oplossing.be
Re: Snelle macro
« Reactie #1 Gepost op: 18 augustus 2018, 16:17:37 »
die 2 codes zeggen weinig, laat het hele bestand eens zien samen met de macro, misschien met case... select case zou een oplossing zijn.

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.116
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Snelle macro
« Reactie #2 Gepost op: 18 augustus 2018, 17:58:32 »
tonnie,

maak van die Sub voorblad() maar volgende:

sub voorblad()
For a = 15 To 45
       If Sheets("Werkomschrijving").Range("o11").Value = Sheets("gegevens").Range("h" & a).Value Then
       Sheets("gegevens").Range("k" & a).Value = Sheets("Werkomschrijving").Range("l14").Value
Next
End Sub

:) 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 !

Offline tonnie

  • Volledig lid
  • **
  • Berichten: 104
  • Geslacht: Man
  • Oplossing.be
Re: Snelle macro
« Reactie #3 Gepost op: 18 augustus 2018, 18:51:49 »
 ;D
Toppert jij wist meteen waar het voor was he  :thumbsup:

Thanks.

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.116
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Snelle macro
« Reactie #4 Gepost op: 18 augustus 2018, 19:26:05 »
Toppert jij wist meteen waar het voor was he  :thumbsup:
Tja Tonnie,

ik heb bijna je hele werkboek hier staan...  ;D

Probeer deze eens in Module 4, Sub leegmaken_werkomschrijving_lijst():

vervang de code:

Sheets("Gegevens").CheckBox1 = False                                               
......
enzovoort tot
......
Sheets("Gegevens").OLEObjects("CheckBox25").Object.caption = "nee"

door

For a = 1 To 25
Sheets("Gegevens").Controls("Checkbox" & a).Value = False
Sheets("Gegevens").OLEObjects("CheckBox" & a).Object.caption = "nee"
Next

De rest van de code moet je natuurlijk laten staan  ;)

Je kan op dezelfde manier een For/Next loop in verschillende andere macro's gebruiken.

:) 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 !

Offline tonnie

  • Volledig lid
  • **
  • Berichten: 104
  • Geslacht: Man
  • Oplossing.be
Re: Snelle macro
« Reactie #5 Gepost op: 18 augustus 2018, 21:58:36 »
Hoi SoftAid,

Hij geeft een foutmelding op de volgende regel:
Sheets("Gegevens").Controls("Checkbox" & a).Value = False
In de caption doet hij wel keurig nee zetten.

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.116
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Snelle macro
« Reactie #6 Gepost op: 18 augustus 2018, 23:44:15 »
Hallooooo,

zat ik even fout >:(

Volgende code werkt
Sub Leeg_maken_werkomschrijving_lijst()
-----
-----
For a = 1 To 25
cb = ("CheckBox" & a)
Sheets("Gegevens").OLEObjects(cb).Object.Value = False
Sheets("Gegevens").OLEObjects("CheckBox" & a).Object.Caption = "nee"
Next
----
End Sub
Slaap wel 0:-)

:) 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 !

Offline tonnie

  • Volledig lid
  • **
  • Berichten: 104
  • Geslacht: Man
  • Oplossing.be
Re: Snelle macro
« Reactie #7 Gepost op: 19 augustus 2018, 01:31:09 »
 :thumbsup:

 


www.combell.com