SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Bij macro's die een bepaalde, merkbare, tijd nodig hebben om hun werk te doen is het van belang de gebruiker een idee te geven van wat er gebeurt, zeker met macro-optimalisatie aan kan het lijken alsof Excel is vastgelopen. Je kan bijvoorbeeld de statusbar een waarde geven, met eventueel een percentage van de reeds uitgevoerde code.SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Password kwijt?
Soms heb je een worksheeet beveiligd met een password maar ben je die kwijt. Gelukkig is dat geen groot probleem want de interne beveiliging van Excel stelt niet heel veel voor.
Hier vind je meer info en een downloadbare macro die alle interne passwords verwijdert.
DISCLAIMER: Denk erom dat je met het breken van de beveiliging van een excelsheet mogelijk wet- of regelgeving overtreedt. Als de spreadsheet van jezelf is zou het geen probleem moeten zijn.
In andere gevallen: vraag toestemming aan de originele schrijver.
Bij twijfelgevallen: NIET DOEN
Mooi, grappig en cool
Een uitgebreide site met nuttige en minder nuttige excelsheetjes. Van kekke grafieken om je manager of leraar te betoveren via oscillogrammen en simulatoren tot pong voor als het weer een typische vrijdagmiddag is: Excelunusual
Verder
Alle vorige topics zijn hier terug te vinden.
Nieuw topic? Haal de OP uit de wikiIt's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
In vanaf G2 staat puur 'Yes' of 'No'.quote:Op zaterdag 28 juni 2014 19:30 schreef Janneke141 het volgende:
[..]
U bent een luien donder, want met de tips in post 279 en 280 had je dit ook wel zelf gekund
Hoe zit 'het tweede' in elkaar? Staan er in kolom G allerlei yessen en noes door elkaar en wil je alleen die waarden in A waar een Yes achter staat? Of de hele kolom als G2="yes"? En met of zonder witregels?
Vast, maar omdat ik dit mogelijk wel overdragen aan een ander (mogelijke leeg) wil ik het niet te moeilijk maken met scripttalen enzo.quote:Op zaterdag 28 juni 2014 20:04 schreef qu63 het volgende:
[..]
Kan je jouw werk niet beter in SQL/PHP/HTML doen? Database maken (SQL), uitlezen en vullen dmv PHP en weergeven dmd PHP en HTMLL?
En de Excel-functies snapt men wel?quote:Op zaterdag 28 juni 2014 20:12 schreef einschtein het volgende:
[..]
In vanaf G2 staat puur 'Yes' of 'No'.Geen witregels. En ja, alleen de waarden uit kolom A (vanaf rij 2) waarbij in kolom G (vanaf rij 2) een 'ja' staat.
Dit dus, alleen dan geautomatiseerd, zodat alles ook onder elkaar in kolom G (vanaf rij 2) komt te staan.
[ afbeelding ]
Ik wil later ook nog andere categorieën laten tonen, maar daar kom ik wel uit zodra ik deze ene rij werkend heb.
[..]
Vast, maar omdat ik dit mogelijk wel overdragen aan een ander (mogelijke leeg) wil ik het niet te moeilijk maken met scripttalen enzo.
Als dat eenmaal klaar is, is het simpelweg invoeren, de kans dat dat kapot gaat is klein. De kans dat je een PHP/SQL script kapot maakt/gaat is wat groter.quote:
Dan mag je je sheets ook wel goed dichtbouwen.. Of je formules zo ruim maken dat ze alle mogelijke antwoorden op kunnen vangen.quote:Op zaterdag 28 juni 2014 21:27 schreef einschtein het volgende:
[..]
Als dat eenmaal klaar is, is het simpelweg invoeren, de kans dat dat kapot gaat is klein. De kans dat je een PHP/SQL script kapot maakt/gaat is wat groter.
Het is zo goed als klaar, moet dus alleen dit nog.quote:Op zaterdag 28 juni 2014 21:32 schreef qu63 het volgende:
[..]
Dan mag je je sheets ook wel goed dichtbouwen.. Of je formules zo ruim maken dat ze alle mogelijke antwoorden op kunnen vangen.
Zie t voorbeeld van DIlic, 4 mogelijke manieren van het opschrijven van een datum, en er zal vast nog wel een vijfde bij komen
Onderschat je gebruiker nietquote:Op zaterdag 28 juni 2014 21:37 schreef einschtein het volgende:
[..]
Het is zo goed als klaar, moet dus alleen dit nog.
Hoeft niet. Heel in het kort:quote:Op zaterdag 28 juni 2014 21:39 schreef qu63 het volgende:
Ik denk ook dat t macro werk wordt, niet mijn specialiteit.. Zoek anders de vorige topics door, ik geloof dat er al een soortgelijke vraag is langsgekomen..
De echte Excel bevat niet dat cijfers qua info in A (vanaf rij 2), maar tekst.quote:Op zaterdag 28 juni 2014 21:43 schreef Janneke141 het volgende:
[..]
Hoeft niet. Heel in het kort:
-Voeg een hulpkolom in, helemaal links
-Zet in A2 =IF(H2="YES";1;0)
-Zet in A3 =IF(H3="YES";MAX(A$2:A2)+1;0)
-Kopieer die naar beneden
-Gebruik een VLOOKUP in de doelkolom om je gewenste gegevensreeks te genereren.
Correct. Als het goed is staan er in kolom A nu oplopende nummers 1, 2, 3 etc. in alle regels met 'yes' en nullen in de no-regels.quote:Op zaterdag 28 juni 2014 23:23 schreef einschtein het volgende:
Als ik dan gebruik wat jij voorstelt, krijg ik cijfers in de A-list. Dat is in mijn test Excel documentje.
Datquote:Op zaterdag 28 juni 2014 23:32 schreef Janneke141 het volgende:
[..]
Correct. Als het goed is staan er in kolom A nu oplopende nummers 1, 2, 3 etc. in alle regels met 'yes' en nullen in de no-regels.
Als je in kolom K jouw geschoonde lijst wil krijgen, dan maak je in kolom J een oplopende lijst 1, 2, 3 etc. (beginnend in J2), en dan zet je in K2 =VLOOKUP(J2;$A$2:$B$3737;2;FALSE) en die kopieer je naar beneden.
volg ik niet helemaal. Ik loop vast bij hoe het te sorteren en hoe er voor te zorgen dat de data dan alsnog in K2 getoond wordt.quote:dan maak je in kolom J een oplopende lijst 1, 2, 3 etc. (beginnend in J2)
In J2 zet je een 1, in J3 een 2 en dan trek je die lijst door naar beneden. Als ik het zo bekijk, ben je er dan. Wat je in A gedaan hebt klopt.quote:
quote:Op zaterdag 28 juni 2014 23:39 schreef Janneke141 het volgende:
[..]
In J2 zet je een 1, in J3 een 2 en dan trek je die lijst door naar beneden. Als ik het zo bekijk, ben je er dan. Wat je in A gedaan hebt klopt.
Sorteren hoef je verder niets.
je zou een extra kolom kunnen maken met datum en rentepercentage op dat moment. En dan je BET-formule laten zoeken naar de meest actuele rentequote:Op zondag 29 juni 2014 14:11 schreef Forno het volgende:
Onze rentevast periode van onze spaarhypotheek loopt binnenkort ten einde.
Weet iemand hoe ik in excel een overzichtje kan maken, waarin ik per maand de variabelen kan wijzigen, zoals:
- Rente
- Extra aflossing/storten
Uiteraard heeft dit effect op de spaarpremie en de rente die je betaald.
Ik bereken de spaarpremie nu met de BET formule in excel. Maar als ik daarin tussentijds de rente wijzig, dan klopt het niet meer. Dan zit er of te veel of te weinig in de spaarpot aan het einde van de looptijd. Laat staan dat ik kan ontdekken hoe je extra aflossingen moet meerekenen.
Al met al een ingewikkeld vraagstuk voor mezelf en kan geen formule(s) vinden op het interwebs.
Excelsheet zou er ongeveer als volgt uit komen te zien.
RIJ1 [TERMIJN 1 P/M][EXTRA STORTEN][SPAARSALDO][SPAARPREMIE][SPAARPOT-RENTE][RENTE PER MAAND][RENTE]
RIJ2 [TERMIJN 2 P/M][EXTRA STORTEN][SPAARSALDO][SPAARPREMIE][SPAARPOT-RENTE][RENTE PER MAAND][RENTE]
RIJ3 ...
Waarin [EXTRA STORTEN] en [RENTE] variabel zijn en de rest automatisch wordt doorgerekend.
Op deze wijze kan ik de hypotheekverstrekker straks een beetje controleren.
Iemand die hiervoor een opzetje heeft of dat zelf al in een excelsheetje heeft staan?
Ik bedoelde iets als dit:quote:Op zondag 29 juni 2014 14:31 schreef Forno het volgende:
Zoiets heb ik al, een aparte kolom waarin ik de rente kan aanpassen. Maar zoals gezegd klopt het bedrag in de spaarpot dan niet meer aan het einde van de looptijd.
Als ik het goed begrijp wijzig je de rente dan steeds voor de gehele looptijd, correct?quote:Op zondag 29 juni 2014 14:43 schreef qu63 het volgende:
[..]
Ik bedoelde iets als dit:
Datum - rente%
1-1-2014 - 2%
18-6-2014 - 2,1%
5-7-2014 - 1,9%
etc.
En dan ipv het rente% in te vullen in de BET-functie, verwijs je dmv vert.zoeken naar het meest recente rente%.
Nee, voor het resterende deel. Dus ook de aantal maanden die je nog te gaan hebt moet je aanpassen.quote:Op zondag 29 juni 2014 14:49 schreef Forno het volgende:
[..]
Als ik het goed begrijp wijzig je de rente dan steeds voor de gehele looptijd, correct?
Dat is precies wat CDate doet, de functie is echter alleen beschikbaar in VBA en niet in Excel. Vandaar de functie in VBA. Mocht je hier meer over willen weten, kun je zoeken op User Defined Functions VBA.quote:Op maandag 30 juni 2014 13:49 schreef DIlic het volgende:
Mijn kennis is inderdaad niet groot met VBA in excel. Ik heb het een en ander geprobeerd, maar tevergeefs niks gelukt. Functie CDatum kan ik ook niet vinden in VBA excel 2003 op mijn werk of misschien zoek ik verkeerd. De bedoeling is dat alle datums worden omgezet naar "jjjj-mm-dd" ongeacht in welke datumnotatie ze zijn geexporteerd uit de database(dit zijn 3 datumnotaties) en welke waarde de celinhoud heeft (kan je de celinhoude/waarde ook automatisch laten vervangen door de juiste jjjj-mm-dd). Ik heb twee werkende formule, misschien heb je er wat aan:
1e =DATUM(LINKS(RECHTS(A2;LENGTE(A2)-6);4);LINKS(A2;2);LINKS(RECHTS(A2;LENGTE(A2)-3);2))
2e =ALS(LINKS(CEL("notatie";G19);1)="D";DATUM(JAAR(G19);MAAND(G19);DAG(G19));ALS(LENGTE(G19)=19;DATUM(LINKS(RECHTS(G19;LENGTE(G19)-6);4);LINKS(G19;2);LINKS(RECHTS(G19;LENGTE(G19)-3);2));DATUM(JAAR(G19);MAAND(G19);DAG(G19))))
Vervolgens moet ik deze in een macro verwerken en doormiddel van een Controle+"letter" de datumnotatie automatisch laten vervangen in "jjjj-mm-dd".
Hier een bestandje met daarin een betere beschrijving van de vraag:
https://www.dropbox.com/s/mdk81tu2jvm7wao/Excelvraag%204.xls
Bij voorbaat dank
ff een grof opzetje gemaakt: http://www.mijnbestand.nl/Bestand-KSXQBSZBE4EQ.xlsxquote:Op zondag 29 juni 2014 15:22 schreef Forno het volgende:
Dan snap ik niet wat je bedoelt.
Wat heeft de datum er mee te maken?
Ik heb al een opzetje waarin de rente in ieder termijn handmatig kan worden aangepast. Maar zoals gezegd klopt het totaal in de spaarpot dan niet meer aan het einde van de looptijd. Ergens moet er iets verrekend worden met het reeds gespaarde bedrag, zodra de rente wordt herzien, en het eventuele tekort of overschot in de resterende looptijd wordt verrekend. Dat lukt me niet.
Zit er altijd 2 regels tussen de fomules? Of een andere logica? Dan zou je kunnen werken met indirect() icm een formule die berekend welk getal er achter de Q moet komen.quote:Op zondag 29 juni 2014 14:41 schreef einschtein het volgende:
[ afbeelding ]
Ik moet die lijst eigenlijk doortrekken, alleen wanneer ik dat doe maakt hij van Q4 dus automatisch Q11, terwijl dat Q5 moet zijn. Hoe kan ik dat tegengaan?
FYI: overal komt een = voor. Dit is puur zodat jullie de formule zien.
Thanks! Ik ga eens stoeienquote:Op woensdag 2 juli 2014 19:46 schreef Janneke141 het volgende:
Nee, je moet SUM.IF hebben. De functie heeft drie argumenten, de eerste is de rij waar Excel moet kijken om de voorwaarde te checken. De tweede is de voorwaarde. De derde is het optelbereik.
Let op de edit.quote:
Daar was ik al vanuit gegaan, toch bedanktquote:Op woensdag 2 juli 2014 19:47 schreef Janneke141 het volgende:
[..]
Let op de edit.
Het is SUMIF, ik had de engelse variant even onzorgvuldig uit mijn geheugen opgelepeld.
Voorwaarde wel goed gezet?quote:Op woensdag 2 juli 2014 19:51 schreef Debsterr het volgende:
[..]
Daar was ik al vanuit gegaan, toch bedankt. Krijg nu geen error meer, maar het resultaat is 0... hmmpf.
Dan voldoet geen van de cellen aan de voorwaarde.quote:Op woensdag 2 juli 2014 19:51 schreef Debsterr het volgende:
[..]
Daar was ik al vanuit gegaan, toch bedankt. Krijg nu geen error meer, maar het resultaat is 0... hmmpf.
Ja zowel geprobeerd als cel selectie als het intypen van de waarde (werk in Google Sheets).quote:
Toch moet daar ergens de fout zitten. Of de voorwaarde wordt niet gevonden in de reeks, óf in het optelbereik staan alleen maar nullen of lege cellen in de matchende regels.quote:Op woensdag 2 juli 2014 19:52 schreef Debsterr het volgende:
[..]
Ja zowel geprobeerd als cel selectie als het intypen van de waarde (werk in Google Sheets).
Al gedaan. Nog steeds 0. En ik zie dat er wel regels zijn die voldoen aan de voorwaarde. Dus ik maak ergens een foutje.quote:Op woensdag 2 juli 2014 19:53 schreef Piger het volgende:
Voorwaarde in tekstvorm tussen aanhalingstekens zetten
Ik bedoel een spaarhypotheek, geen spaarrekening.quote:Op woensdag 2 juli 2014 14:28 schreef qu63 het volgende:
[..]
ff een grof opzetje gemaakt: http://www.mijnbestand.nl/Bestand-KSXQBSZBE4EQ.xlsx
De te betalen rente wordt iedere maand opnieuw berekend, daarnaast kan je ook zelf een hogere aflossing invullen, bijvoorbeeld na de kerstbonus
-edit-
En een lagere nieuwe schuld kan je ook vervangen door een gestegen saldo op de spaarrekening
Je rente op je geleende bedrag en op je spaarsaldo zijn iedere maand gelijk aan elkaar?quote:Op woensdag 2 juli 2014 20:22 schreef Forno het volgende:
[..]
Ik bedoel een spaarhypotheek, geen spaarrekening.![]()
Hierbij mijn opzet, waarbij de kolom "spaarsaldo" aan het einde van de looptijd gelijk zou moeten zijn en blijven aan het totaalbedrag van de lening. Zoals je weet los je aan het einde van een spaarhypotheek je lening in 1 keer af.
http://www.mijnbestand.nl/Bestand-7KTKE6KOQONI.xlsx
Echter als je de rente aanpast ergens gedurende de looptijd, dat klopt het totaal bedrag niet meer.
Laat staan dat ik kan uitvogelen welke formule(s) je moet gebruiken die extra tussentijdse aflossingen kan berekenen.
Ik vond wel een (beveiligde) sheet voor 3 vormen van hypotheken (jij vast ook al), ik heb em alleen even gesloopt en de beveiliging er af gehaald, misschien kan je hier verder mee? http://www.mijnbestand.nl/Bestand-HBB3LXMV6FFV.xlsx Ik heb alleen de solver ook gesloopt, geloof ik..quote:Op woensdag 2 juli 2014 22:24 schreef Forno het volgende:
Als financieel leek heb ik dat inderdaad kunnen uitpluizen.
Het rentepercentage over het geleende bedrag en je een spaarpot zijn altijd gelijk aan elkaar.
Ik lees her en der dat een hoger of lager rentepercentage daarom weinig uitmaakt bij een spaarhypotheek, maar wil graag zelf met de getallen kunnen spelen om de effecten van verschillende rentepercentages en renteherzieningen te kunnen bekijken. In plaats van te moeten vertrouwen op de blauwe ogen van een hypotheekadviseur.
Voor andere de andere standaard hypotheekvormen heb ik dit al kunnen opzetten, ik bijt me alleen stuk op de berekening van een spaarhyptheek.
1 2 | Dim maxrow As Long maxrow = [LOOKUP(2,1/(A11:A510<>""),ROW(A11:A510))] |
Heb je wel een ijkdatum en ijksaldo zodat je alsnog het dagelijkse saldo kan berekenen? Ik neem aan van wel...quote:Op maandag 7 juli 2014 18:05 schreef qu63 het volgende:
Hoe kan ik Excel laten berekenen welk bedrag er iedere dag op mijn rekening stond en de rente die ik daar over krijg? Ik geef alleen mutaties door in mijn sheet, niet het dagelijkse saldo.. Hulpsheet maken en verwijzen naar de cel erboven, behalve als er een mutatie is geweest op die dag? Is er een handigere (minder rekenkracht kostende) optie?
Ja, vandaagquote:Op maandag 7 juli 2014 18:25 schreef sylvesterrr het volgende:
[..]
Heb je wel een ijkdatum en ijksaldo zodat je alsnog het dagelijkse saldo kan berekenen? Ik neem aan van wel...
En mn sheet heeft al veel van dat soort formules (som.als/vert.zoeken/etc)..quote:Een sheet met alle dagen van het jaren (evt meerdere jaren) en dan per dag het saldo van de voorgaande dag vermeerderen met rente en mutaties... Dat worden wel veel sumifs-jes.
Geen rente over rente? Hoe werkt dat dan? Zelf ging ik altijd uit van de effectieve dagelijkse rente, waarbij je dus rente ontvangt over rente .quote:Op maandag 7 juli 2014 18:31 schreef qu63 het volgende:
[..]
Ja, vandaag
(net 2 nieuwe rekeningen aangemaakt)
[..]
En mn sheet heeft al veel van dat soort formules (som.als/vert.zoeken/etc)..
Voordeel is wel dat de rente op 1 januari overgemaakt wordt, dus geen rente over rente, als ik t goed begrepen heb. Ik krijg gewoon 10 cent voor vandaag, en als het saldo morgen weer hetzelfde is krijg ik nog een keer 10 cent.
Zie dit: https://www.rabobank.nl/p(...)_periodesparen/#tab3quote:Op maandag 7 juli 2014 18:33 schreef sylvesterrr het volgende:
[..]
Geen rente over rente? Hoe werkt dat dan? Zelf ging ik altijd uit van de effectieve dagelijkse rente, waarbij je dus rente ontvangt over rente .
Helder. Geen rente over rente inderdaad, maar wel dagelijks rente. Hoe ga je om met gewijzigde rentepercentages en saldoklassen?quote:Op maandag 7 juli 2014 18:35 schreef qu63 het volgende:
[..]
Zie dit: https://www.rabobank.nl/p(...)_periodesparen/#tab3
Saldoklassen is (helaasquote:Op maandag 7 juli 2014 18:40 schreef sylvesterrr het volgende:
[..]
Helder. Geen rente over rente inderdaad, maar wel dagelijks rente. Hoe ga je om met gewijzigde rentepercentages en saldoklassen?
Ik zou bijna willen suggereren om de rente gewoon als 1 mutatie op 1 januari te zien.
quote:Op maandag 7 juli 2014 18:43 schreef qu63 het volgende:
[..]
Saldoklassen is (helaas) geen probleem
Gewijzigde rente zou ik ook in aparte tabel bij moeten houden, dus nog een check er bij..
En dat allemaal omdat ik wil weten hoeveel rente ik al opgebouwd heb
En dat laat RaboInternetBankieren zelfs zien op de site
quote:Op maandag 7 juli 2014 18:44 schreef sylvesterrr het volgende:
[..]
Je zoekt gewoon een reden om met Excel te stoeien.
Engels: LOOKUP(2,1/(A11:A510<>""),ROW(A11:A510))quote:Op maandag 7 juli 2014 11:15 schreef kipptje het volgende:
Dag mensen,
Na een kleine pauze te hebben ingelast heb ik mijn 'probleem' opgepakt en de oplossing gevonden. Probleem lag niet in de formule (waarvoor dank nog) maar wat ik er daarna mee deed. Echter snap ik de formule niet helemaal. Kan iemand mij uitleggen wat hier precies staat:
[ code verwijderd ]
Het gekke is dus dat als ik google op deze formule dat ze beweren dat ik op waarde "2" zoek in een bepaalde range, maar wat ie dus eigenlijk doet is dat het in een bepaalde range de laatste ingevulde cel (alles behalve leeg) opzoekt en als waarde de rijnummer weergeeft...Dus fijn dat het werkt, maar I'm completely lost!!!
Als ik dit snap kan ik eventueel later problemen oplossen (mochten die komen omdat we wijzigingen hebben doorgevoerd).
Ontzettend bedankt voor de uitleg! Het wordt mij een heel stuk duidelijker nu! Kan het misschien zijn dat het laatste argument een vector is omdat ik het rijnummer wil hebben en niet de waarde in de betreffende cel? Heb helaas te weinig zitten opletten tijdens mijn wiskunde lessen over vectoren....quote:Op maandag 7 juli 2014 21:42 schreef snabbi het volgende:
[..]
Engels: LOOKUP(2,1/(A11:A510<>""),ROW(A11:A510))
Nederlands: ZOEKEN(2;1/(A11:A510<>"");RIJ(A11:A510))
Laten we beginnen met het feit dat het inderdaad klopt dat je zoekt naar 2. Op zich is het niet heel relevant naar welke waarde je zoekt, omdat de functie de dichtstbijzijnde waarde zoekt. Op het moment dat het geen 2 vindt, is 1 ook goed bijvoorbeeld.
Nu hoor ik je denken, maar hij pakt elke ingevulde waarde. Dat is juist. Dit komt door het tweede deel van de formule. 1/(A11:A510<>"")
Het belangrijkste deel van deze formule is die (A11:A510<>""). Wat dit doet is een vector maken (dus een reeks aan waarden). Aangezien we hier een vergelijking maken dat de inhoud van de betreffende CEL ongelijk is aan "" kan de uitkomst van deze vergelijking maar 2 waarden hebben. Het is WAAR (of TRUE) wanneer de inhoud van de cel inderdaad ongelijk is aan "". Of de waarde is ONWAAR (of FALSE) indien de cel wel leeg is. In de computer wordt WAAR weergegeven als 1 en ONWAAR als 0.
In de formule 1/( uitkomst is 1 of 0) krijg je dus of de uitkomst 1/1 of 1/0. De uitkomst 1/0 geeft een foutmelding doordat je niet door 0 kunt delen en dus krijg je bij het zoeken naar de waarde 2 het resultaat van een cel die wel een waarde heeft. In de zoektocht pakt hij hier de laatste in de vector. Waarom precies de laatste in de vector weet ik niet, vast omdat hij geen exacte match heeft.
Kleine workaround: trek de cellen door naar beneden, kopiëer en doe dan plakken speciaal -> transponeren.quote:Op dinsdag 8 juli 2014 13:42 schreef ieniminimuis het volgende:
Dus nieuwe laptop met office 2013 en ik word er nu al gek van.
Ik heb dus problemen met een simpele formule doortrekken wat hij niet toestaat.
zo ziet mijn tabel eruit met de formules.
=B3 =B4 =B5
=C3 =C4 =C5
etc.
met oudere versies kon je naar mijn weten 2 cellen selecteren en dan kon je de formule doortrekken en deed excel het goed.
Nu doet het excel het volgende:
=B3 =B4 =B5 =F3
=C3 =C4 =C5 =G3
Iemand hier een oplossing voor? Google wist het antwoord niet.
Kijk eens naar aantallen.als().quote:Op dinsdag 8 juli 2014 13:59 schreef wouter456 het volgende:
Hallo iedereen,
Ik heb een vergelijkbaar probleem als kipptje met de lookup functie. Ik krijg het zelf niet voor elkaar dus ik hoop dat jullie er even naar kunnen kijken.
Ik ben bezig met een onderzoek en nu heb ik een aantal patienten en aantal aangevraagde bloedtesten. De patienten hebben gewoon een naam en de bloedtesten hebben de getallen 1 tm 7 gekregen. Nu ziet mijn data er ongeveer zo uit:
Naam Test
Janssen 1
Janssen 1
Janssen 3
Janssen 5
Janssen 1
Janssen 2
Peters 1
Peters 1
Peters 3
Peters 2
Dit wil eigenlijk zeggen dat patient janssen eerst 2 keer labtest 1 heeft gekregen daarna een keer labtest 3, daarna een keer labtest 4 daarna weer een keer labtest 1, etc.
Nu kan ik daar niks mee in SPSS (ik kan geen means of SD uitrekenen of wat dan ook) daarom wil de data eigenlijk in deze vorm hebben:
Patient Soort labtest Aantal keer aangevraagd
Janssen 1 2
Janssen 2 1
Janssen 3 1
Janssen 4 0
Peters 1 2
Etcetera.
Kan iemand mij helpen?
MVG Wouter
Als je quote zie je de spaties wel staanquote:PS ik krijg mijn data niet goed in deze post, de spaties haalt fok zelf weg, hopelijk is het nog leesbaar
Bedankt voor je hulp, ik heb daat al een beetje naar gekeken en heb wel een beetje ervaring met programmeren. Ik krijg het alleen niet voor elkaar 3 kolommen te berekenen. Dus met de naam van de patient en daar echter het soort labtest en de aantallen daarvan.quote:Op dinsdag 8 juli 2014 14:05 schreef qu63 het volgende:
[..]
Kijk eens naar aantallen.als().
[..]
Als je quote zie je de spaties wel staan
Ah oke zoiets dacht ik al. Omslachtig.quote:Op dinsdag 8 juli 2014 13:47 schreef qu63 het volgende:
[..]
Kleine workaround: trek de cellen door naar beneden, kopiëer en doe dan plakken speciaal -> transponeren.
Probeer dit eens: http://www.mijnbestand.nl/Bestand-MKKGEDRWVVJ6.xlsxquote:Op dinsdag 8 juli 2014 14:17 schreef wouter456 het volgende:
[..]
Bedankt voor je hulp, ik heb daat al een beetje naar gekeken en heb wel een beetje ervaring met programmeren. Ik krijg het alleen niet voor elkaar 3 kolommen te berekenen. Dus met de naam van de patient en daar echter het soort labtest en de aantallen daarvan.
Het moet namelijke een soort loop worden. Dat die loop als het ware elke keer weer op nieuw begint te tellen als er een nieuwe patient naam 'opduikt'
Crap, je hebt gelijkquote:Op dinsdag 8 juli 2014 14:29 schreef ieniminimuis het volgende:
[..]
Ah oke zoiets dacht ik al. Omslachtig.
Edit: plakken speciaal werkt dus niet met formules en die moet ik er wel in hebben voor later gebruik.
Conclusie: Microsoft laat mij liever RSI krijgen en mijn tijdverspillen dan normaal werkende programma's maken.quote:
Met de INDEX-functie is wat jij wil niet zo moeilijk.quote:Op dinsdag 8 juli 2014 14:41 schreef ieniminimuis het volgende:
[..]
Conclusie: Microsoft laat mij liever RSI krijgen en mijn tijdverspillen dan normaal werkende programma's maken.
Zucht.
Oke, de functie snap ik en doet het ook. Alleen het doortrekken gaat ook met deze functie niet goed.quote:Op dinsdag 8 juli 2014 14:46 schreef Janneke141 het volgende:
[..]
Met de INDEX-functie is wat jij wil niet zo moeilijk.
Held, bedankt kerel.quote:Op dinsdag 8 juli 2014 14:38 schreef qu63 het volgende:
[..]
Probeer dit eens: http://www.mijnbestand.nl/Bestand-MKKGEDRWVVJ6.xlsx
Volgens mij beschrijft deze persoon iets soortgelijks, maar ik heb geen idee hoe hij dat doet:quote:Op woensdag 9 juli 2014 13:25 schreef Groenalsgras het volgende:
Voor de handige knutselaar:
Ik werk met office 2013, taal NL.
voor de verslaglegging van functionerings- en beoordelingsgesprekken ben ik een opzet aan het maken in excel.
tabblad 1 is het functioneringsgesprek (FG) van 2014,
tabblad 2 de beoordeling 2015,
tabblad 3 het FG 2015,
tabblad 4 het BG 2016
tabblad 5 het FG 2016
etc...
* in een FG kiezen we 3 competenties (uit een lijst van ca. 12) die we in het volgende BG gaan beoordelen. hierbij zetten we een X voor het vakje
Wat ik graag wil:
als in tabblad 1 een cel voor een competentie een X bevat, dat deze competenties op tabblad 2 automatisch worden herhaald in de 3 daarvoor bestemde vakjes.
Ik hoop dat ik het zo duidelijk heb uitgelegd.
Ik kan een voorbeeldje toesturen, weet niet hoe ik dit moet plaatsen in mijn topic.
Met macro's ben ik niet bekend.
Ik ben nieuwsgierig naar jullie oplossingen!
Zoiets: http://www.mijnbestand.nl/Bestand-CKBRT4TEQPB7.xlsxquote:Op woensdag 9 juli 2014 13:25 schreef Groenalsgras het volgende:
Voor de handige knutselaar:
Ik werk met office 2013, taal NL.
voor de verslaglegging van functionerings- en beoordelingsgesprekken ben ik een opzet aan het maken in excel.
tabblad 1 is het functioneringsgesprek (FG) van 2014,
tabblad 2 de beoordeling 2015,
tabblad 3 het FG 2015,
tabblad 4 het BG 2016
tabblad 5 het FG 2016
etc...
* in een FG kiezen we 3 competenties (uit een lijst van ca. 12) die we in het volgende BG gaan beoordelen. hierbij zetten we een X voor het vakje
Wat ik graag wil:
als in tabblad 1 een cel voor een competentie een X bevat, dat deze competenties op tabblad 2 automatisch worden herhaald in de 3 daarvoor bestemde vakjes.
Ik hoop dat ik het zo duidelijk heb uitgelegd.
Ik kan een voorbeeldje toesturen, weet niet hoe ik dit moet plaatsen in mijn topic.
Met macro's ben ik niet bekend.
Ik ben nieuwsgierig naar jullie oplossingen!
bedankt voor het meedenken! en wat lief dat je het helemaal hebt voorgedaan. Maar helaas krijg ik toch een foutmelding:quote:Op woensdag 9 juli 2014 13:58 schreef qu63 het volgende:
[..]
Zoiets: http://www.mijnbestand.nl/Bestand-CKBRT4TEQPB7.xlsx
Let er wel op dat de 3 fomules op het 2e tabblad matrix-formules zijn, dus bevestigen met CTRL+SHIFT+ENTER!
Dat komt omdat je mijn formule verkeerd gekopieerd hebtquote:Op woensdag 9 juli 2014 14:17 schreef Groenalsgras het volgende:
[..]
bedankt voor het meedenken! en wat lief dat je het helemaal hebt voorgedaan. Maar helaas krijg ik toch een foutmelding:
http://www.mijnbestand.nl/Bestand-L6WXCIEVZ6IS.xlsx
tjee wat goed zeg, bedankt!quote:Op woensdag 9 juli 2014 15:11 schreef qu63 het volgende:
[..]
Dat komt omdat je mijn formule verkeerd gekopieerd hebt
Zoek de verschillen:
=INDEX($B$2:$B$13;KLEINSTE(ALS($A$2:$A$13="x";RIJ($A$2:$A$13)-1);RIJ(1:1));2)
=INDEX($A$2:$B$13;KLEINSTE(ALS($A$2:$A$13="x";RIJ($A$2:$A$13)-1);RIJ(1:1));2)
De onderste is de juiste, bevestigen met CTRL+SHIFT+ENTER
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | Sub Methode1() Application.ScreenUpdating = False Dim i As Long Range("A2").Select Selection.End(xlDown).Select lastRow = ActiveCell.Row With ActiveWorkbook.Sheets(1) For i = lastRow To 1 Step -1 If CDate(Cells(i, 2)) > CDate(Range("H2").Value) Then Rows(i).Delete End If Next i End With Application.ScreenUpdating = True End Sub |
1. Wat bedoel je precies met actieve cell waarde? Ik neem aan dat je je huidige selectie wil registreren voor je vlookup formules? Dan is vba de enige optie:quote:Op donderdag 10 juli 2014 16:33 schreef jakees het volgende:
Ben bezig met een soort van dashboard in Excel. Daarin heb ik een ranglijst van zeg 1 tot en 500 en nu wil ik dat als je je op bijvoorbeeld de nummer 2 klikt dat ik dan met wat verticaal zoeken acties wat waardes opvraag die bij die geselecteerde cel horen. Verticaal zoeken en dergelijke lukt prima. Heb echter nog 2 vragen:
1) Actieve cell waarde. Is dat alleen mogelijk met VB? of is er ook een mogelijkheid om dit met een formule in excel zelf op te vragen?
2) Wat ik dan vervolgens zou willen is dat je aan de linkerkant van het scherm kan scrollen en aan de rechterkant dan de waardes verschijnen waarbij de rechterkant niet scrollt.
Weet iemand hoe ik dit kan doen? Thx alvast!
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.2. Nee, je kan wel titels blokkeren en scherm splitsen, maar de rechterzijde als het ware vasthouden kan niet. Wellicht is een dropdownbox een idee, zodat er helemaal niet gescrollt hoeft te worden
Ik heb zitten kloten met de notatie van H2 en het stuk van verwijderen niet echt bekeken. Onderstaande zou moeten werken.quote:Op vrijdag 11 juli 2014 11:54 schreef DIlic het volgende:
Beste Stickers,
Sorry voor het laat reageren op je reactie. Je hebt het helemaal goed begrepen.
Alleen bij het toepassen van jouw macro/loop geeft hij een fout bij:
If DateValue(Cells(i, 2)) > DateValue(Range("H2").Value) Then
Deze regel wordt geel gemarkt. Heeft het misschien iets te maken met datumwaarde en datumnotatie?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | Sub Methode1() Application.ScreenUpdating = False Dim i As Long Range("A2").Select Selection.End(xlDown).Select lastRow = ActiveCell.Row With ActiveWorkbook.Sheets(1) For i = lastRow To 1 Step -1 If CDate(Cells(i, 2)) > CDate(Range("H2").Value) Then Rows(i).Delete End If Next i End With Application.ScreenUpdating = True End Sub |
Code zoals hierboven gekopieerd in het bestand wat je eerder hebt geüpload. Ik krijg geen foutmelding. Heb je iets aangepast in het bestand?quote:Op vrijdag 11 juli 2014 14:43 schreef DIlic het volgende:
Heb het net toegepast maar helaas nogsteeds dezelfde foutmelding bij de volgende zin:
If CDate(Cells(i, 2)) > CDate(Range("H2").Value) Then
Ook zegt hij erbij "fout 13: typen komen niet overeen"
1 2 3 | Range("A2").Select Selection.End(xlDown).Select lastRow = ActiveCell.Row |
1 | If CDate(Cells(i, 2)) > CDate(Range("H2").Value) Then |
Je controleert of een datum na 1-7-2014 ligt én voor 1-1-2013. Dat kan dus niet. And moet Or wordenquote:Op maandag 14 juli 2014 11:13 schreef DIlic het volgende:
Beste Stickers,
Ik begrijp de code wel hoor, alleen heb ik je een nieuwe worksheet gestuurd met een andere kolomvolgorde. Mijn fout. De code werk nu perfect voor de datum tot (in dit geval) juni (omdat het nu juli is). Maar de gegevens voor 1-1-2013 horen ook verwijderd te worden. Heb het volgende geprobeerd, maar het is niet gelukt:
If CDate(Cells(i, 7)) < CDate(Range("AI2").Value) And _
CDate(Cells(i, 7)) > CDate(Range("AG2").Value) Then
(AI2 heb ik de cdatum waarde 1-1-2013 gegeven en AG2 heeft de cdatum waarde 1-7-2014)
Weet jij misschien hoe ik dit laatste zou kunnen oplossen Stickers?
Voor alsnog heel erg bedankt met de macro tot nu toe.
Je kan een tweede lijn in je grafiek toevoegen. enige wat je moet doen is voor elk punt op je X as je normwaarde plaatsen.quote:Op maandag 14 juli 2014 12:41 schreef webbyplus het volgende:
Wellicht kunnen jullie me helpen. Ik heb een scatter plot die ik in VBA aanmaak.
Nu wil ik, zonder de brondata van de grafiek uit te breiden een horizontale norm-streep door mijn grafiek laten lopen.
Weet iemand of dit mogelijk is? (het zij zonder, het zij met gebruik van VBA)
Bvd
Webster
Plaats in de lijst met je adressen een vergelijking naar B en een vergelijking naar C.quote:Op dinsdag 15 juli 2014 11:00 schreef Trusten het volgende:
Beste allemaal, als Excel noob heb ik een vraagje....
Op m'n werk maak ik wekelijks een lijst A welke tientallen e-mailadressen bevat. Hieruit wil ik een aantal e-mailadressen verwijderen die op andere lijsten voorkomen (ik noem ze maar even B en C).
Wat is hiervoor de meest handige en efficiënte manier?
Je kan overigens ook alles onder elkaar zetten, de kolom selecteren en vervolgens Gegevens > Duplicaten verwijderen > Doorgaan met huidige selectie.quote:Op dinsdag 15 juli 2014 11:00 schreef Trusten het volgende:
Beste allemaal, als Excel noob heb ik een vraagje....
Op m'n werk maak ik wekelijks een lijst A welke tientallen e-mailadressen bevat. Hieruit wil ik een aantal e-mailadressen verwijderen die op andere lijsten voorkomen (ik noem ze maar even B en C).
Wat is hiervoor de meest handige en efficiënte manier?
Klopt.quote:Op donderdag 17 juli 2014 13:30 schreef kipptje het volgende:
Even nog een kleine vraag, want mijn collega komt er niet uit en ik denk dat ik het antwoord weet, maar kan het niet ondersteunen met een link.
Als er staat Cells.Find(What:="*".....
Dan zoekt de functie toch gewoon naar een waarde (welke waarde maakt niks uit, zolang er maar wat staat)? dank!
Maar hou er dan wel rekening mee dat find ergens zomaar begint te zoeken en je dit ook moet definieren.quote:Op donderdag 17 juli 2014 13:30 schreef kipptje het volgende:
Even nog een kleine vraag, want mijn collega komt er niet uit en ik denk dat ik het antwoord weet, maar kan het niet ondersteunen met een link.
Als er staat Cells.Find(What:="*".....
Dan zoekt de functie toch gewoon naar een waarde (welke waarde maakt niks uit, zolang er maar wat staat)? dank!
Damn wat een open deur...dat we dat niet eerder bedacht hebben (niet sarcastisch bedoeld). Thanksquote:Op donderdag 17 juli 2014 15:38 schreef Stickers het volgende:
Je kan overigens ook alles onder elkaar zetten, de kolom selecteren en vervolgens Gegevens > Duplicaten verwijderen > Doorgaan met huidige selectie.
Cells geeft aan dat je overal zoekt in je activesheet, toch? .Find werkt wel per rij. Daar kun je wel op letten.quote:Op donderdag 17 juli 2014 15:44 schreef Basp1 het volgende:
[..]
Maar hou er dan wel rekening mee dat find ergens zomaar begint te zoeken en je dit ook moet definieren.
Oh, de rest van de definities staan er al in en hebben we volledig geanalyseerd, dat sterretje was het enige waar nig wat onduidelijkheid over bestond.quote:Op donderdag 17 juli 2014 15:44 schreef Basp1 het volgende:
[..]
Maar hou er dan wel rekening mee dat find ergens zomaar begint te zoeken en je dit ook moet definieren.
quote:Op dinsdag 22 juli 2014 15:33 schreef DIlic het volgende:
Pls een vba macro die in kolom R in elke cel naar "LMD" zoekt. elke cel heeft een stuk tekst, maar als die tekst LMD bevat dan hoort die gehele rij verwijderd te worden. Stickers jouw manier van cdatum en verwijderen van bepaalde datums werkt super!
1 2 3 4 5 6 7 | Sub fok() For Each c In Range("R:R").Cells If InStr(c.Value, "LMD") <> 0 Then c.EntireRow.Delete Next c End Sub |
Bij mij doet de macro exact wat je vraagt. De macro is wel hoofdletter gevoelig.quote:Op woensdag 23 juli 2014 11:39 schreef DIlic het volgende:
Alleen heb ik gemerkt dat hij elke rij verwijdert waarbij "LMD" in het begin van het zin voorkomt. Bestaat er een mogelijkheid dat die ook de rijen verwijdert waarbij "LMD" op een willekeurige plek staat in een zin. Dus voorbeeld:
A1. LMD is verwijderd
A2. Het is een LMD
A3. lageLMD
A4. LMDlaag
Rij A1 wordt verwijderd en rijen van A2,A3 en A4 niet, omdat inhoud van A2 niet met het woord "LMD" begint of er is tekst aangeplakt.
Weet er iemand een VBA oplossing voor dit probleem?
met UCase() kun je een goede vergelijking forceren.quote:Op woensdag 23 juli 2014 13:07 schreef Deetch het volgende:
[..]
Bij mij doet de macro exact wat je vraagt. De macro is wel hoofdletter gevoelig.
Ik neem aan dat je in je voorbeeld de "R:R" wel weer hebt vervangen door "A:A"?
klopt, ff herschrijvenquote:Op woensdag 23 juli 2014 13:09 schreef Stickers het volgende:
De macro van Deetch zoekt per rij of de cel LMD bevat, is dit het geval dan verwijderd hij deze rij. Met als gevolg dat de rijen één naar boven opschuiven, terwijl de for each verder gaat. Maw telkens als een cel LMD bevat, dan voert hij geen controle uit op de volgende cel.
Je kan net als de cdatum macro gebruik maken van een for x = lastRow to 1 step -1. Dan moet het goed gaan.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Sub fok() Application.ScreenUpdating = False ActiveSheet.Range("A" & Rows.Count).End(xlUp).Select For x = ActiveCell.Row To 1 Step -1 Range("A" & x).Select If InStr(ActiveCell.Value, "LMD") <> 0 Then ActiveCell.EntireRow.Delete Next x Application.ScreenUpdating = True End Sub |
Klopt ook. Ik was in de veronderstelling dat het voor een geautmatiseerd programmaatje moest zijn om ruwe data voor te bewerken.quote:Op woensdag 23 juli 2014 14:22 schreef snabbi het volgende:
Ik weet dat er specifiek om een Macro wordt gevraagd, maar in mijn ogen is het handiger dat gebruik gemaakt wordt van Filter opties. Zorg dat je de filter aanzet op de betreffende kolommen. Zoek in je filter het criterium op van de cellen die je wilt verwijderen (dus bevat LMD). Vervolgens kan je in een keer al deze rijen verwijderen.
Het voordeel hiervan is dat iemand die niet echt met macro's kan werken, zelf ook tot een oplossing kan komen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Private Sub Worksheet_Activate() n = 1 For Each wSheet In Worksheets If wSheet.Name <> Me.Name Then n = n + 1 On Error Resume Next Me.Hyperlinks.Add Anchor:=Me.Cells(n, 3), Address:="", _ SubAddress:="'" & wSheet.Name & "'!A1", TextToDisplay:=wSheet.Name End If Next wSheet End Sub |
Jup.quote:Op vrijdag 25 juli 2014 16:40 schreef Stickers het volgende:
Hyperlink zal, voor zover ik weet, niet werken, daar hij een string gebruikt als link en geen verwijzing. Misschien kun je met =cel("bestandsnaam"), =deel() en =vind.spec() het een en ander gebruiken als verwijzing, zodat je geen macro hoeft te gebruiken.
quote:Mocht je daar geen zin in hebben, dan kun je onderstaande code plaatsen in het werkblad(rechtermuisknop op werkblad > Programmacode weergeven). Telkens als je hem activeert, dan creëert hij een nieuwe lijst hyperlinks in kolom C. Zie Cells(n, 3).Hier is 3 kolom C. Wil je dat ie begint vanaf rij 5? Dan n = 5.
[ code verwijderd ]
In het geval dat de naam van de cel gelijk is aan de naam van het tabblad kan dit werken:quote:Op dinsdag 29 juli 2014 10:05 schreef Skv het volgende:
Dag goeroes!
Ik ben doorverwezen naar dit topic vanuit mijn eigen topic. Mijn vraag is als volgt:
Ik heb nu cellen met een waarde van 1-10 er in. Als je op zo'n cel klikt, wordt je doorgelinkt naar een tweede tabblad met de legenda (1 = zeer slecht, 2 = slecht ...).
Ik wil het nu graag zo dat je moet dubbelklikken voordat hij doorgaat naar dat tabblad in plaats van enkel. Als je enkel klikt moet hij gewoon in de cel blijven staan.
Met andere woorden: de hyperlink moet pas geactiveerd worden bij dubbelklikken. Bij enkel klikken moet het invoerbericht (gegevensvalidatie) worden getoond.
Iemand een idee hoe ik dat kan doen?
1 2 3 4 | Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) On Error Resume Next Sheets(Target.Value).Activate End Sub |
SPOILER: Code in spoilerOm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Wanneer ik het bestand open, krijg ik altijd "Error has occured" te zien, terwijl de ribbon wel gewoon wordt getoond.
[ Bericht 7% gewijzigd door Stickers op 29-07-2014 10:22:04 ]
quote:Op dinsdag 29 juli 2014 10:09 schreef Stickers het volgende:
[..]
In het geval dat de naam van de cel gelijk is aan de naam van het tabblad kan dit werken:
[ code verwijderd ]
Hiervoor geldt wel dat de cel geen link mag zijn, dan gaat ie alsnog naar het betreffende tabblad met 1 klik.
Ik heb een bestand gevonden met code waar ik wel iets mee kan. Nu begrijp ik alleen niet waarom iRibbonUI wordt gezien als Nothing.Is er een alternatief voor het geval dat de cel wél een link is? De geboden oplossing had ik via Google elders gevonden, maar die werkt helaas niet.SPOILER: Code in spoilerOm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Wanneer ik het bestand open, krijg ik altijd "Error has occured" te zien, terwijl de ribbon wel gewoon wordt getoond.Ons soort mensen, trapt reeds jaren blij van zin, het vuile plebs de modder in.
Ons soort mensen, steunpilaar van vaderland en koningin.
quote:Op vrijdag 25 juli 2014 16:40 schreef Stickers het volgende:
Hyperlink zal, voor zover ik weet, niet werken, daar hij een string gebruikt als link en geen verwijzing. Misschien kun je met =cel("bestandsnaam"), =deel() en =vind.spec() het een en ander gebruiken als verwijzing, zodat je geen macro hoeft te gebruiken.
Mocht je daar geen zin in hebben, dan kun je onderstaande code plaatsen in het werkblad(rechtermuisknop op werkblad > Programmacode weergeven). Telkens als je hem activeert, dan creëert hij een nieuwe lijst hyperlinks in kolom C. Zie Cells(n, 3).Hier is 3 kolom C. Wil je dat ie begint vanaf rij 5? Dan n = 5.
[ code verwijderd ]
Die programmacode maakte van alle tabbladen een hyperlink, dat was niet echt de bedoelingquote:Op vrijdag 25 juli 2014 17:13 schreef qu63 het volgende:
[..]
Jup.
=RECHTS(DEEL(CEL("bestandsnaam";A1);VIND.SPEC("]";CEL("bestandsnaam";A1))+1;256);4)
En HYPERLINK() werkt gewoon samen met INDIRECT()
[..]
Thanks! Dat komt in de buurt bij wat ik zoek.quote:Op donderdag 31 juli 2014 09:23 schreef Deetch het volgende:
Je moet er geen XYscatterplot van maken maar een lijngrafiek.
Dan kun je vervolgens de asopmaak aanpassen naar intervallen met 3 maanden en een andere startdatum kiezen.
Major units op 3 maand zetten? En dan minor op 1 maand. En dan kun je nog minor tickmarks toevoegen.quote:Op donderdag 31 juli 2014 10:24 schreef baskick het volgende:
[..]
Thanks! Dat komt in de buurt bij wat ik zoek.
Dit voldoet deels aan mijn wensen; hij start nu op het gewenste moment (een hele maand of de start van een kwartaal). Als ik 'm handmatig op 1-7 (start Q3) zet, wordt de volgende dan ook 1-7 en niet 1-10. Dat is wel overkomelijk door 'm bij 1-1 te laten starten (en een leeg deel in grafiek te accepteren). Helaas zie ik zo niet hoe ik de interval op kwartalen krijg (alleen dagen, maanden of jaren). Nog tips?
My bad. Ik was te gefocust op de opties (dag/maand/jaar) en kwartalen, dat ik er niet dacht om 'm op 3 maanden (óók een kwartaal) te zetten. Dit doet exact wat ik wil. Thanks a lot!quote:Op donderdag 31 juli 2014 10:40 schreef Deetch het volgende:
[..]
Major units op 3 maand zetten? En dan minor op 1 maand. En dan kun je nog minor tickmarks toevoegen.
Is je datum kolom wel ook echt een datum en niet stiekem gewoon tekst?
ga jequote:Op donderdag 31 juli 2014 11:08 schreef baskick het volgende:
[..]
My bad. Ik was te gefocust op de opties (dag/maand/jaar) en kwartalen, dat ik er niet dacht om 'm op 3 maanden (óók een kwartaal) te zetten. Dit doet exact wat ik wil. Thanks a lot!
Dan klopt je uitgangsdata niet. Kun je er daar geen - voor zetten?quote:Op maandag 4 augustus 2014 15:47 schreef static het volgende:
Ik heb een pivot-table waar kolommen bij elkaar opgeteld worden tot het totaal. Nu wil ik dat één van de waardes in die kolom niet wordt opgeteld, maar afgetrokken. Het zal ongetwijfeld iets simpels zijn, maar kan het niet vinden.
Edit: dus alleen bij een enkel veld, de rest moet nog wel opgeteld worden.
De rij/kolom met de counts kopieren en plakken als waardes?quote:Op maandag 4 augustus 2014 16:58 schreef static het volgende:
Nee, de source-data zijn geen cijfers, het is een count.
Dan de formule van de count *-1 doen.quote:Op dinsdag 5 augustus 2014 12:55 schreef static het volgende:
De data is goed, het is een count die ik af wil trekken van het totaal, dus niet opgeteld aan het eind van de kolom.
quote:Op dinsdag 29 juli 2014 10:09 schreef Stickers het volgende:
Ik heb een bestand gevonden met code waar ik wel iets mee kan. Nu begrijp ik alleen niet waarom iRibbonUI wordt gezien als Nothing.Iemand?SPOILER: Code in spoilerOm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Wanneer ik het bestand open, krijg ik altijd "Error has occured" te zien, terwijl de ribbon wel gewoon wordt getoond.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Private Sub doit_click() For x = 2 To Cells(Rows.Count, "B").End(xlUp).Row 'Get the string to compare tacct = Cells(x, 2) tamt = Cells(x, 5) For x2 = x + 1 To Cells(Rows.Count, "A").End(xlUp).Row If Cells(x2, 2) = tacct And tamt + Cells(x2, 5) = 0 Then Rows(x2).Delete Rows(x).Delete x = x - 1 Exit For End If Next 'x2 Next 'x End Sub |
NB: Ik heb de variabele tacct en tamt aangepast naar grootboek en bedrag.quote:Op woensdag 6 augustus 2014 12:27 schreef Maraca het volgende:
Hoi,
Ik zit even met een probleem. Ik heb een bestand van ongeveer 23.000 regels en daarvan moet ik alle creditbedragen afzetten tegen de debetbedragenkansloos dus, aangezien het er best veel zijn. Nu wil ik een macro gebruiken om dit voor mij te laten doen. Daar heb ik de volgende macro voor gevonden (bron).
[ code verwijderd ]
Dit is eigenlijk precies wat ik wil. Ik heb een grootboekrekeningnummer, en een bedrag dat zowel debet als credit kan zijn. Alleen lukt het mij niet om deze macro te gebruiken in mijn bestand. Als ik het voorbeeld op de website gebruik, werkt deze perfect. Maar zodra ik in het voorbeeld extra regels toevoeg lijkt het ook niet meer te werken.
Zou iemand mij bovenstaande code kunnen uitleggen en kunnen vertellen wat ik aan moet passen zodat ik deze macro kan gebruiken? Ga er maar vanuit dat mijn bestand er hetzelfde uitziet als de voorbeeld op de website (dus grootboeknummer in kolom A en bedrag (zowel debet als credit) in kolom B). Verschil is wel dat ik ook nog kolom C, D etc heb met andere info. Oh en mijn bedragen zijn in euro's, maar dat lijkt mij geen invloed te hebben.
Excel versie: 2007
Taal: Engels
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Private Sub doit_click() For x = 2 To Cells(Rows.Count, "B").End(xlUp).Row 'Get the string to compare grootboek = Cells(x, 1) bedrag = Cells(x, 2) For x2 = x + 1 To Cells(Rows.Count, "A").End(xlUp).Row If Cells(x2, 1) = grootboek And bedrag + Cells(x2, 2) = 0 Then Rows(x2).Delete Rows(x).Delete x = x - 1 Exit For End If Next 'x2 Next 'x End Sub |
1 | For x = 2 To Cells(Rows.Count, "B").End(xlUp).Row |
1 2 | grootboek = Cells(x, 1) bedrag = Cells(x, 2) |
1 | For x2 = x + 1 To Cells(Rows.Count, "A").End(xlUp).Row |
1 | Cells(x2, 1) = grootboek |
1 | bedrag + Cells(x2, 2) = 0 |
1 2 | Rows(x2).Delete Rows(x).Delete |
1 | x = x - 1 |
1 | Exit For |
Heb het net even op een deel van mijn bestand geprobeerd en het werktquote:Op woensdag 6 augustus 2014 14:16 schreef Stickers het volgende:
[..]
NB: Ik heb de variabele tacct en tamt aangepast naar grootboek en bedrag.
[ code verwijderd ]
Hij maakt een loop en legt het bereik vast wat gecontroleerd moet worden:
[ code verwijderd ]
registreert het grootboeknummer en bedrag:
[ code verwijderd ]
Om vervolgens met een loop in die loop:
[ code verwijderd ]
door de andere bedragen/grootboeknummers heen te gaan om te kijken of
het grootboeknummer matcht:
[ code verwijderd ]
én
de bedragen opgeteld 0 zijn:
[ code verwijderd ]
Is dit het geval, dan worden beide regels verwijderd:
[ code verwijderd ]
Gaat hij 1 stap terug, omdat alles naar boven schuift wegens het verwijderen van een regel.
[ code verwijderd ]
En stopt hij met zoeken naar matches, hij heeft er immers 1 gevonden:
[ code verwijderd ]
En op naar de volgende met "Next"
De fout zat in het feit dat tamt + Cells(x2, 5) = 0 de vergelijking uitvoerde op rij x2 en kolom 5. Kolom 5 is leeg dus de uitkomst zal altijd 0 zijn. Dit betekent dat er alleen op bedrag word gecontroleerd en niet of deze matcht met een grootboek. Dit lijkt me niet de bedoeling.
Microsoft site maakt niet veel uit, het originele bestand waar ik het uit heb werkt alles wel gewoon.quote:Op woensdag 6 augustus 2014 12:02 schreef Deetch het volgende:
Die microsoftsite bestaat niet meer zo te zien. Kan dat het zijn?
Als ik je code zo lees ga je on workbook open eerst naar RefreshRibbon. Hierin zit je foutmelding die alleen wordt gegenereerd als je Rib nothing is.
Maar Rib is ook nothing omdat je die pas definieert in de sub RibbonOnLoad (Set Rib = ribbon) en ik zie niet wanneer die wordt afgeroepen maar waarschijnlijk pas na je workbook open.
Npquote:Op woensdag 6 augustus 2014 14:24 schreef Maraca het volgende:
[..]
Heb het net even op een deel van mijn bestand geprobeerd en het werkt! Ontzettend bedankt
De lijst in A is altijd op alfabet gesorteerd?quote:Op vrijdag 8 augustus 2014 00:57 schreef RacerDKB het volgende:
Stel ik heb een lijst die er zo uit ziet:
[ afbeelding ]
In A staan productnamen, soms twee dezelfde achtereenvolgend; soms vijf; soms één, en in B staan bedragen die bij de producten in A horen.
Kan ik dan in één keer laten berekenen wat de som is, maar dan per product? Dat dit er uit komt dus:
[ afbeelding ]
Ik zat te kloten met SOM.ALS maar kwam er niet uit. Ik wil dus de bedragen in B optellen maar elke keer als de waarde in A verandert dan moet ie resetten en weer opnieuw beginnen met optellen.
1 | =ALS(A3=A2;"";SOM.ALS($A$2:A2;A2;$B$2:B2)) |
Oh wauw dit werkte zo goed, bedankt! Wilde dit altijd al weten, blijkt niet eens zo lastig maar ik kwam er niet opquote:Op vrijdag 8 augustus 2014 01:39 schreef qu63 het volgende:
[..]
De lijst in A is altijd op alfabet gesorteerd?
If so, in C2 en doortrekken naar beneden:
[ code verwijderd ]
Ik vond mijzelf ook vrij helder om half 2quote:Op vrijdag 8 augustus 2014 08:51 schreef RacerDKB het volgende:
[..]
Oh wauw dit werkte zo goed, bedankt! Wilde dit altijd al weten, blijkt niet eens zo lastig maar ik kwam er niet op
Je hebt me wat werk bespaard, top.
Dus het kan niet automatisch in de pivot zelf?quote:Op dinsdag 5 augustus 2014 16:43 schreef ralfie het volgende:
Maak een extra (verborgen) kolom aan met alles 1 behalve die ene rij, -1. Dan beide kolommen vermenigvuldigen en klaar. Netste oplossing zou ik zeggen
Nee, de pivot geeft slechts een dwarsdoorsnede van je gegevens en staat manipulatie niet toe. Manipulatie is noodzakelijk vanwege dat een count niet negatief zal zijn.quote:Op vrijdag 8 augustus 2014 20:12 schreef static het volgende:
[..]
Dus het kan niet automatisch in de pivot zelf?
Dit zal je via een macro moeten regelen aangezien je het koppelt aan een event als openen/sluiten. Overigens is je audit-trail die je hier opbouwt niet heel erg betrouwbaar. omdat de gebruiker hier zelf vrij eenvoudig een manipulatie op kan uitvoeren.quote:Op vrijdag 8 augustus 2014 19:43 schreef mighty_myte het volgende:
Ik wil in een excel file een lijstje maken dat automatisch de datum en laatste gebruikersnaam noteert.
Nu heb ik geen moeite met het afvangen van die twee dingen, maar ik weet niet hoe ik ,elke keer dat de file geopend wordt, naar een nieuwe regel moet.
Iemand?
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |