Help!

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

Hulp bij posten

Recente topics

Auteur Topic: vba for..next..-loop wegschrijfvraagje  (gelezen 10218 keer)

0 leden en 1 gast bekijken dit topic.

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 180
  • Geslacht: Vrouw
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #45 Gepost op: 21 januari 2024, 08:57:56 »
Vergeten te vermelden.
Als je Option Explicit gebruikt moet je volgende variabelen nog definieren
jaar vorig c00 c01
Groetjes,Della

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 180
  • Geslacht: Vrouw
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #46 Gepost op: 21 januari 2024, 09:00:54 »
Citaat
Als ik dan de 5e parochie wil verwerken ga ik wel héél vaak op 'pgdn' moeten klikken...
Dan denk ik nog eventjes verder
Groetjes,Della

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 180
  • Geslacht: Vrouw
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #47 Gepost op: 21 januari 2024, 09:09:11 »
Als je een lijstje maakt in bv kolom Z van je parochies en dan de juiste cel selecteert, is dit niet voldoende?
Groetjes,Della

Offline BlackDevil

  • Ambassadeur
  • *****
  • Berichten: 1.031
  • Geslacht: Vrouw
  • veni vidi vici
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #48 Gepost op: 21 januari 2024, 09:22:59 »
Vergeten te vermelden.
Als je Option Explicit gebruikt moet je volgende variabelen nog definieren
jaar vorig c00 c01

idd, 'vorig' en 'jaar' moest ik nog declareren (even over het hoofd gezien maar zou dan wel melding hebben gekregen zodra ik de 'option explicit' terug uit de commentaar haalde  :) )

de PDF-code heb ik gereduceerd tot 1 lijntje code
  ActiveSheet.ExportAsFixedFormat xlTypePDF, ThisWorkbook.Path & "\" & ActiveSheet.Name & ".pdf", , , , , , True

groetjes,
Bieke
1) HP ProDesk (Windows 10 Pro Edu / Intel(R) Core(TM) i5-7500 CPU@ 3.40Ghz 3.41Ghz)
2) Laptop ASUS (Windows 10 Home / Intel(R) Core(TM) i3-3110M CPU@ 2.40GHz 2.40GHz)
Beide (RAM : 8,00 GB / 64-bits besturingssysteem, x64-processor)
Extern (Seagate Backup+ Hub 6TB / Seagate BUP Slim 2TB / Seagate Expansion Desk 5TB / HP ENVY 6030e)
Bullguard Premium Protection / Office Pro Plus 2016 NL

Offline BlackDevil

  • Ambassadeur
  • *****
  • Berichten: 1.031
  • Geslacht: Vrouw
  • veni vidi vici
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #49 Gepost op: 21 januari 2024, 09:26:27 »
Als je een lijstje maakt in bv kolom Z van je parochies en dan de juiste cel selecteert, is dit niet voldoende?

wel nee want in mijn 'echte' bestand gaan mijn laatste x-aantal gebruikte kolommen niet meer 'zichtbaar' (in beeld) zijn...


groetjes,
Bieke
1) HP ProDesk (Windows 10 Pro Edu / Intel(R) Core(TM) i5-7500 CPU@ 3.40Ghz 3.41Ghz)
2) Laptop ASUS (Windows 10 Home / Intel(R) Core(TM) i3-3110M CPU@ 2.40GHz 2.40GHz)
Beide (RAM : 8,00 GB / 64-bits besturingssysteem, x64-processor)
Extern (Seagate Backup+ Hub 6TB / Seagate BUP Slim 2TB / Seagate Expansion Desk 5TB / HP ENVY 6030e)
Bullguard Premium Protection / Office Pro Plus 2016 NL

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 180
  • Geslacht: Vrouw
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #50 Gepost op: 21 januari 2024, 09:32:12 »
Citaat
de PDF-code heb ik gereduceerd tot 1 lijntje code
Het kan zelfs nog wat korter. ;)
ActiveSheet.ExportAsFixedFormat xlTypePDF, ThisWorkbook.Path & "\" & ActiveSheet.Name, , , , , , True
Groetjes,Della

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 180
  • Geslacht: Vrouw
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #51 Gepost op: 21 januari 2024, 09:59:09 »
Is deze oplossing een mogelijkheid?
Druk op de knop idx2dig
Groetjes,Della

Offline BlackDevil

  • Ambassadeur
  • *****
  • Berichten: 1.031
  • Geslacht: Vrouw
  • veni vidi vici
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #52 Gepost op: 21 januari 2024, 10:35:53 »
Is deze oplossing een mogelijkheid?
Druk op de knop idx2dig

Sorry Della, maar ik ben speciaal afgestapt van het gebruik van de inpubox omdat ik deze te storend/onderbrekend vond dus dan zie ik niet hoe een UF een betere oplossing zou zijn...

En als je dan toch een UF gebruikt om de gebruiker de parochie te laten kiezen, waarom dan nog een extra werkblad aanmaken met een lijst als bron van de keuzelijst???
Waarom dan op de UF niet meteen kiezen voor een combobox.list die je meteen in de code opvult??
Ook zou ik persoonlijk de verwerk-code van de sub zelf niet in zijn geheel in de UF-code zetten maar zou ik in de UF enkel de sub aanroepen.


Enkel en alleen maar voor dat keuzelijstje op elk werkblad een UF gaan aanroepen vind ik alles behalve 'het simpel houden'.
Als ik dan al een UF wenselijk achtte dan had ik die optie wel gebruikt om mijn 'gecentraliseerde' code van de afgelopen dagen aan te sturen.
Meer zelfs, ik zou dan àl mijn werkbladen en diverse handelingen aansturen via UF's voor mijn volledige bestand.

ik waardeer je poging maar ik wil net het storende effect van een inputbox elimineren terwijl jouw UF-oplossing die enkel maar vervangt dus dan kan ik evengoed mijn inputbox behouden.

toch bedankt voor de moeite.

groetjes,
Bieke

1) HP ProDesk (Windows 10 Pro Edu / Intel(R) Core(TM) i5-7500 CPU@ 3.40Ghz 3.41Ghz)
2) Laptop ASUS (Windows 10 Home / Intel(R) Core(TM) i3-3110M CPU@ 2.40GHz 2.40GHz)
Beide (RAM : 8,00 GB / 64-bits besturingssysteem, x64-processor)
Extern (Seagate Backup+ Hub 6TB / Seagate BUP Slim 2TB / Seagate Expansion Desk 5TB / HP ENVY 6030e)
Bullguard Premium Protection / Office Pro Plus 2016 NL

Offline BlackDevil

  • Ambassadeur
  • *****
  • Berichten: 1.031
  • Geslacht: Vrouw
  • veni vidi vici
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #53 Gepost op: 21 januari 2024, 11:44:20 »
*update*

wie zoekt die vind  ;D
oplossing voor parochie-keuze via keuzelijst (met unieke waarden) in cel "A1" gevonden!  ;)

groetjes,
Bieke
1) HP ProDesk (Windows 10 Pro Edu / Intel(R) Core(TM) i5-7500 CPU@ 3.40Ghz 3.41Ghz)
2) Laptop ASUS (Windows 10 Home / Intel(R) Core(TM) i3-3110M CPU@ 2.40GHz 2.40GHz)
Beide (RAM : 8,00 GB / 64-bits besturingssysteem, x64-processor)
Extern (Seagate Backup+ Hub 6TB / Seagate BUP Slim 2TB / Seagate Expansion Desk 5TB / HP ENVY 6030e)
Bullguard Premium Protection / Office Pro Plus 2016 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #54 Gepost op: 21 januari 2024, 12:09:52 »
Hey Bieke,

Na veel wikken en wegen dus toch voor nog een ideetje van mij gegaan? ;)
Citaat
heb ik gewoon voor de 6 soorten registers een eigen 'template'-werkblad (DIG) gemaakt

En dit klinkt mij ook niet onbekend in de oren:
Citaat
Op elk 'IDX'-werkblad komt dan een knop met daarachter een eigen 'sub'

Die keuzelijst in A1 is wat ik je net wou voorstellen, dus daarmee zitten we nog eens meteen op hetzelfde spoor :D

Is het een vereiste dat je pdf geopend wordt na aanmaak? Indien ja, dan heb ik weer niets gezegd, anders kan je die 'True' achteraan wijzigen, of nog beter: weghalen, samen met die serie komma's.
En om dan verder in te korten:
ActiveSheet.ExportAsFixedFormat 0, ThisWorkbook.Path & "\" & ActiveSheet.Name
Groetjes,
Molly
Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Offline BlackDevil

  • Ambassadeur
  • *****
  • Berichten: 1.031
  • Geslacht: Vrouw
  • veni vidi vici
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #55 Gepost op: 21 januari 2024, 12:32:29 »
hey Molly,

Na veel wikken en wegen dus toch voor nog een ideetje van mij gegaan? ;)
Ja, zoals ik in mijn bericht #40 vermeldde => "zoals molly reeds eerder suggereerde"  ;D

Citaat
Die keuzelijst in A1 is wat ik je net wou voorstellen, dus daarmee zitten we nog eens meteen op hetzelfde spoor :D
Inderdaad, maar mijn gevonden oplossing daaromtrent blijkt dan toch niet helemaal waterdicht te zijn  :D ...
Het was dan ook maar een oplossing zoals mijn algemene excel- & VBA-kennis is hé, 'amateuristisch'  ;D ;D ;D
En wat dat 'zelfde spoor' betreft is al wel vaker in het verleden (bij de vele projecten) gebleken hé dat we zowat in dezelfde lijn denken  ;)

Citaat
Is het een vereiste dat je pdf geopend wordt na aanmaak? Indien ja, dan heb ik weer niets gezegd, anders kan je die 'True' achteraan wijzigen, of nog beter: weghalen, samen met die serie komma's.
En om dan verder in te korten:
ActiveSheet.ExportAsFixedFormat 0, ThisWorkbook.Path & "\" & ActiveSheet.Name
jaja, die heb ik bewust op 'true' gezet omdat ik graag meteen het resultaat zie  ;)

groetjes,
Bieke
1) HP ProDesk (Windows 10 Pro Edu / Intel(R) Core(TM) i5-7500 CPU@ 3.40Ghz 3.41Ghz)
2) Laptop ASUS (Windows 10 Home / Intel(R) Core(TM) i3-3110M CPU@ 2.40GHz 2.40GHz)
Beide (RAM : 8,00 GB / 64-bits besturingssysteem, x64-processor)
Extern (Seagate Backup+ Hub 6TB / Seagate BUP Slim 2TB / Seagate Expansion Desk 5TB / HP ENVY 6030e)
Bullguard Premium Protection / Office Pro Plus 2016 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #56 Gepost op: 21 januari 2024, 12:56:29 »
Hey Bieke,

Citaat
(keuzelijst)...mijn gevonden oplossing daaromtrent blijkt dan toch niet helemaal waterdicht te zijn
Dan vraag ik me af hoe je dat gedaan hebt (?)
Zo van héél ver zie ik 2 mogelijkheden, afhankelijk van hoe jij werkt:
Als je binnen dezelfde sessie én gegevens toevoegt én deze verwerking(en) doet wordt het iets lastiger, dan zou je al een worksheet_change moeten gebruiken (of nog naar een andere manier zoeken...)
Maar als je (wat ik eerder zou verwachten) of het ene of het andere doet kan het met workbook_open geregeld worden.

Ik heb ook je nieuwste code bekeken, en die kan iets korter. Op zich niet zo speciaal, maar met het oog op 'dupliceren' naar de 5 andere zou je er wel wat tijd mee kunnen besparen.

Groetjes,
Molly
Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Offline BlackDevil

  • Ambassadeur
  • *****
  • Berichten: 1.031
  • Geslacht: Vrouw
  • veni vidi vici
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #57 Gepost op: 21 januari 2024, 13:14:02 »
hey Molly,

Dan vraag ik me af hoe je dat gedaan hebt (?)

Wel, ik had het als volgt gedaan :
1) via de worksheet.activate event een advanced.filter met unieke waarden gekopieerd naar een kolom, waarvan ik zeker was dat ik ze in het werkblad nooit voor iets anders zou nodig hebben,
zodat deze bij elke activatie van het werkblad zou bijgewerkt worden.
2) via de simpele gegevensvalidatie (lijst) dan die range van unieke waarden gebruikt om in cel "A1" een keuzelijst te maken.

Aanvankelijk werkte dit goed maar op gegeven moment (geen idee na welke actie) geeft de advanced.filter-code de eerste parochie 2x weer waardoor ik dan nooit mijn 5e parochie te zien zal krijgen in mijn keuzelijst...

Dus ja, mijn aanpak was dus allesbehalve 'waterdicht'  ;D :D

groetjes,
Bieke

P.S. dus achter mijn werkblad had ik volgende code geplaatst :
Private Sub Worksheet_Activate()
  Dim laatste As Long
  laatste = Cells(Rows.Count, 1).End(xlUp).Row
  Range("A2:A" & laatste).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("ZZ2"), Unique:=True
End Sub
1) HP ProDesk (Windows 10 Pro Edu / Intel(R) Core(TM) i5-7500 CPU@ 3.40Ghz 3.41Ghz)
2) Laptop ASUS (Windows 10 Home / Intel(R) Core(TM) i3-3110M CPU@ 2.40GHz 2.40GHz)
Beide (RAM : 8,00 GB / 64-bits besturingssysteem, x64-processor)
Extern (Seagate Backup+ Hub 6TB / Seagate BUP Slim 2TB / Seagate Expansion Desk 5TB / HP ENVY 6030e)
Bullguard Premium Protection / Office Pro Plus 2016 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #58 Gepost op: 21 januari 2024, 14:03:09 »
Hey Bieke,

Volgende code is net iets langer ;), maar bliksemsnel :D, en heeft geen behoefte aan een vrije plaats op je werkblad:
Private Sub Worksheet_Activate()

par = Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row)
With CreateObject("System.Collections.Arraylist")
  For i = 1 To UBound(par)
    If Not .contains(par(i, 1)) Then .Add par(i, 1)
  Next
  .Sort
  val_lijst = Application.Transpose(Application.Transpose(.toarray))
End With
With Cells(1, 1).Validation
  .Delete
  .Add Type:=xlValidateList, Formula1:=Join(val_lijst, ",")
End With

End Sub

Groetjes,
Molly
Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 180
  • Geslacht: Vrouw
Re: vba for..next..-loop wegschrijfvraagje
« Reactie #59 Gepost op: 21 januari 2024, 14:25:43 »
Hoi, ik blijf eventjes meedenken.
Gezien je Worksheet_Activate gebruikt, lijkt deze oplossing iets?
(zie bijlage)
Dan heb ik nog een vraagje.
Ik zie dat je onderaan volgende code gebruikt.
Worksheets("DIG_G_PR-" & par).Visible = xlSheetHiddenIs het de bedoeling dat je deze aangemaakte bladen blijft behouden nadat ze zijn opgeslagen als PDF?
Groetjes,Della

 


www.combell.com