Volledige versie bekijken : VBA excel 1 to 10 => A to AY?



pietereeckhout
13 September 2007, 21:37
Hello

Is het mogelijk om iets te doen zoals For intTeller = A To AY?

Op deze manier lukt het allezins niet.

Hoe kan ik anders in een loop dit mogelijk maken?

alvast bedankt
mvg
Pieter

Martijnc
13 September 2007, 22:07
Hoe zijn A en AY gedeclareerd, de counter moet namelijk een integer zijn en geen string.

Geef eens wat meer uitleg wat je wil bereiken.

pietereeckhout
13 September 2007, 22:40
ik heb dus een variable letter en een variabel cijfer.

Dat variabel cijfer maken is niet moeilijk.

Maar hoe maak ik die variable letter

dus die letter kan A,B,....EX,EY zijn. Net zoals 1,2,3,...78,79 bv.

Maar hoe doe je dat met letters

Jule
13 September 2007, 22:43
Toch idem? In VBA is Cell(3;3) toch cel C3?

pietereeckhout
13 September 2007, 22:52
ahja als ik met Cell werk eens kijken of het lukt ...

Ik gebruik al heletijd Range

bedankt

filip
14 September 2007, 09:34
Pieter,

Je kan kiezen of je met cells() werkt of niet als je een range wil selecteren kan dat ook als volgt..... (zie voorbeeldje).
http://users.telenet.be/simcity/lusvoorbeeld.xls
Op blad 2 staat ook nog wat uitleg, je zal er vlug mee spelen, er zijn nog snellere methoden maar met de huidige pc's is dat nog van weinig belang.:lol:
Zoals je zal zien in Sub wis() kan je gemakkelijk Range ook variabel maken
in een lus....als je daar wat mee experimenteert is dat vlug oude koek.

groetjes.

filip
14 September 2007, 15:13
Pieter,

Bij dat wissen zet hij die cellen gelijk aan "" niets dus.

Je hebt dan natuurlijk 4 variabelen nodig om op die manier een range te selecteren.

2 voor de startcel en 2 voor de eindcel

Worksheets(1).Range(Cells(startrij, startkolom), Cells(eindrij, eindkolom)).Value = (uw gegevens die je in die range wil plaatsen)

de gegevens kunnen een string zijn zet ze dan tussen " " , een getal of variabele zet je er gewoon achter.:eek:

Jule
14 September 2007, 23:13
Ik leer hier bij? Is er dan toch één van mijn twee hersencellen wakker geschoten? Thanks!

filip
15 September 2007, 09:11
Jule,
Wij zijn gedoemd om gans ons leven bij te leren , de evolutie gaat al sneller
dan het tempo aan welke wij het kunnen ontrafelen.
We moeten spijtig genoeg nog slapen ook he :lol:.
Maar ik zie het als hersengymnastiek en doe het graag , iemand die dit tegen zijn zin allemaal zou proberen leren zal niet ver geraken.
Groetjes en bedankt voor uw bedankje:bow:

pietereeckhout
15 September 2007, 10:15
Dit is opgelost

Jule
15 September 2007, 14:13
Damned, deze is voor mij te moeilijk. Filip zal deze zonder probleem oplossen. Ik zou het veranderen naar :
For each intWerknemersteller = 5 To lngAantalWerknemers

pietereeckhout
15 September 2007, 14:15
kzal eens proberen

werkt niet, hij heeft een "In" nodig en een variable

Jule
15 September 2007, 14:23
Ja, da klopt! Ik ben te weinig in VBA bezig.

pietereeckhout
15 September 2007, 15:22
yaah ik heb mijn fout gevonden. Ik heb intVroegdiensten = 0 gezet achter de intwerknemersteller.

Zo simpel kan het soms zijn :-)

filip
15 September 2007, 21:47
Ha, Ik zie dat je het gevonden hebt :-) ik had je al een priveberichtje gezonden
Het beste is dat je het zelf vind dan vergeet je het nooit meer.
Er is niemand die iets kan maken dat direct vlot draait.
Hoeveel versies komen er niet uit van elk programma om bugs uit te halen
en meestal zit daar dan een ganse ploeg aan te prutsen......
Ik spreek uit ondervinding :-) ik blijf maar zoeken naar problemen.
Op de pc natuurlijk he pietertje.

Want wie een put graaft voor een ander..... is een arbeider. :-) lol

pietereeckhout
16 September 2007, 15:49
Nog een vraagje:

Hoe zorg ik ervoor dat ik bij een Select Case ook 2 gegevens kan zetten?

filip
16 September 2007, 20:27
Pieter, heb hier iets gevonden zou moeten kunnen.

Ik ben er blijven tegen vechten maar ik kom er ook nog niet
als ik die fout 91 wegkrijg (zelfde fout als bij u) door anders te declareren
krijg ik "typen komen niet overeen" er moet hier zeker wel een oplossing voor zijn.
Tja , hoe heb je alles gedeclareerd ? En ik ben ook zo ik zou dan zeker die IF..... niet gebruiken en verderzoeken.
Als ik het bij integers hou geen problemen maar eens ik begin met strings of mengen begint de miserie instellen als variant ook al geprobeerd.
Eens proberen met zelf een type te declareren of mss eens zoeken bij microsoft.

P.s. Pieter je moet eens kijken als die fout zich voordoet ( de 91 ) dan is er niks om mee te werken, dat gegeven is dan niets zelfs geen 0 .....en er staat nogthans een gegeven in die cel , net daarvoorbij valt het boeltje dan in panne natuurlijk :-).

filip
16 September 2007, 23:11
Select Case Sheets("jan-mei").Cells(intWerknemersteller, intDagenTeller).Value
Case ........
Case ........
End Select
Select Case Sheets("jun-dec").Cells(intWerknemersteller, intDagenTeller).Value
Case ........
Case ........
End Select

pietereeckhout
17 September 2007, 18:09
Ok gip is bijna klaar, en door geen if then else te gebruiken is het ook veel sneller geworden. Kben blij dat et bijna af is. Ik moet het wel pas afgeven op 21 oktober ofzo :)

Dit mag gesloten worden
Dank aan allen en voornamelijk filip voor zijn voorbeelden. Merci!

compuchrisje
17 September 2007, 22:48
Laat ons alvast weten hoe je "beloond" werd Pieter. Succes!