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.[b]Op vrijdag 24 augustus 2007 09:50 schreef PretKroket het volgende:[/b]
dude? :') ik hoop voor je dat je niet serieus bent
Even voor jou: 2x1/2 = 1/2 x 1/2
[b]Neem mij niet tè serieus, dat doe ik zelf ook niet[/b]
Een macro hoeft niet per se, in mijn financiële overzicht maak ik automatisch een witregel na de zondag, en stop ik na 31 december.quote:Op donderdag 16 april 2015 08:24 schreef Janneke141 het volgende:
Maak even een hulpkolom (A) met 'gewone' getallen waarvan de eerste overeenkomt met de eerste datum in de lijst. In de kolom voor de datums komt
=ALS(REST(A1;7)<2;"";A1)
En stel je de celeigenschappen van de datumkolom in op het juiste datumformat. Zou goed moeten gaan.
-Edit- even herlezend: dit levert een lijst met datums met weekdagen en witregels voor de weekenddagen. Maar als je elke zesde en zevende regel helemaal leeg wil hebben, dan moet je een macro gaan gebruiken. Daar ben ik niet zo goed in, dus daar moet dan maar even iemand anders bij helpen.
Volgens mij houdt Excel niet bij wanneer je wat doet, dit zal je hem dus zelf moeten vertellen.. Je zou het met een macro kunnen proberen, maar zelf de datum invullen lijkt mij makkelijker..quote:Op zondag 19 april 2015 14:44 schreef Crimineel87 het volgende:
Vraagje,
Als ik in Tabblad-1 een V zet in een cel, wil ik graag dat ik in Tabblad-2 een verwijzing kan maken naar die cel met de V. Dat kan in nog wel, maar eigenlijk moet die V dan veranderen in de datum dat ik die V daar neer heb gezet in Tabblad-1.
Dus op 29-3-15 zet ik een V in Cel-A1 op Tabblad-1, dan moet op Tabblad 2 in cel huppeldepup de datum 29-3-15 en dat moet ook die datum blijven.
Enig idee?
Sub vandaag()quote:Op zondag 19 april 2015 16:09 schreef qu63 het volgende:
[..]
Volgens mij houdt Excel niet bij wanneer je wat doet, dit zal je hem dus zelf moeten vertellen.. Je zou het met een macro kunnen proberen, maar zelf de datum invullen lijkt mij makkelijker..
En dat dan ook nog naar sheet 2quote:Op maandag 20 april 2015 10:14 schreef Twentsche_Ros het volgende:
[..]
Sub vandaag()
'
' vandaag Macro
'
' Keyboard Shortcut: Ctrl+q
'
ActiveCell.FormulaR1C1 = "=TODAY()"
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
Dat zou met een macro kunnen, de standaard formules doen alleen wat jij hierboven al beschreven hebt.quote:Op dinsdag 28 april 2015 16:24 schreef Anatomy01 het volgende:
Beste Forumleden,
Ik wil in excel een optie toevoegen waarbij als XFC1 de waarde van cel C5 of hoger behaald, XFC4 met 1 waarde omhoog gaat. Ik heb het volgende gedaan:
1. Bij XFC5 heb ik waarde 0 ingevoerd (hier begin ik mee)
2. Bij XFC4 heb ik de volgende formule ingevoerd: =IF(XFC1>=C5;XFC5+1;XFC5)
Ik krijg inderdaad dat als XFC1 de waarde van cel C5 of hoger behaald dat XFC4, 1 wordt. Het probleem is alleen dat XFC4 steeds 1 wordt elke keer als XFC1 de waarde van cel C5 of hoger behaald, terwijl ik juist wil dat XFC4 elke keer met 1 omhoog gaat als XFC1 de waarde van cel C5 of hoger behaald.
Dat zal dan een formulier of een macroknop geweest kunnen zijnquote:Daarnaast vraag ik mij ook af hoe ik in excel voor elkaar krijg dat als ik dubbelklik op een cel de waarde 1 wordt en als ik er weer op dubbelklik het 0 wordt en omgekeerd. Deze functie zat namelijk in een standaard format wat ik heb gebruikt, maar heb ik perongeluk weggehaald en ik kan niet meer vinden hoe ik dit terug krijg.
Zou iemand mij kunnen helpen?
Ik heb excel 2013 (Engels)
Macro's zijn helaas niet mijn sterkste kant, maar het zou iets moeten als:quote:Op dinsdag 28 april 2015 18:10 schreef Anatomy01 het volgende:
@qu63 De optie met dubbelklikken was inderdaad een macro. Deze heb ik gekopieerd uit het format en nu werkt het.
Ik ben zelf niet zo bekend met macro's. Hoe kan ik mijn andere vraag met een macro voor elkaar krijgen?
quote:Op dinsdag 28 april 2015 18:10 schreef Anatomy01 het volgende:
@qu63 De optie met dubbelklikken was inderdaad een macro. Deze heb ik gekopieerd uit het format en nu werkt het.
Ik ben zelf niet zo bekend met macro's. Hoe kan ik mijn andere vraag met een macro voor elkaar krijgen?
Plaats de code wel in de VB editor van je betreffende werkblad! Geen aparte modules oid aanmaken.quote:Private Sub Worksheet_Change(ByVal Target As Range)
'Hier plaats ik code zodat alleen wijzigingen
'plaatsvinden bij het veranderen van de cel XFC1 of C5.
'Dit om te voorkomen dat je macro op hol slaat bij elke wijziging.
'Let op, mochten de getallen in C5 of XFC1 dus afhankelijk zijn van
'andere cellen moet je dit wel toevoegen
'Target is hier de cel die wijzigt! Dit kan dus elke cel in je werkblad zijn
If Target.Address = "$XFC$1" Or Target.Address = "$C$5" Then
'deze code wordt alleen uitgevoerd wanneer de gewijzigde cel XFC1 of C5 is.
'de dollar tekens zijn verplicht!
If Range("XFC1").Value >= Range("C5").Value Then
Range("XFC4").Value = Range("XFC4").Value + 1
End If
End If
End Sub
En dat doe je door met je rechtermuistoets op de tab onderaan te klikken en uit het menu programma code weergeven te kiezen.quote:Op dinsdag 28 april 2015 22:48 schreef snabbi het volgende:
[..]
[..]
Plaats de code wel in de VB editor van je betreffende werkblad! Geen aparte modules oid aanmaken.
ALT+F11quote:Op woensdag 29 april 2015 08:44 schreef Basp1 het volgende:
[..]
En dat doe je door met je rechtermuistoets op de tab onderaan te klikken en uit het menu programma code weergeven te kiezen.
Heel erg bedankt voor het schrijven van de code! Door de uitleg die je erbij hebt gezet, snap ik ook wat je doetquote:Op dinsdag 28 april 2015 22:48 schreef snabbi het volgende:
[..]
[..]
Plaats de code wel in de VB editor van je betreffende werkblad! Geen aparte modules oid aanmaken.
Werkt "If Target.Address = "$XFC$1" Then" dan niet zonder de overige or regels erbij?quote:Op donderdag 30 april 2015 00:24 schreef Anatomy01 het volgende:
Hoe kan ik dat aangeven in de code?
PS: (ik heb het volgende geprobeerd, maar toen kreeg ik een error: If Target.Address = "$XFC$1" Or Target.Address = "$C$5" Or Target.Address = "$C:$C" Or Target.Adress = "$H:$H" Then )
Nee, er gebeurt dan niks.quote:Op donderdag 30 april 2015 15:36 schreef Basp1 het volgende:
[..]
Werkt "If Target.Address = "$XFC$1" Then" dan niet zonder de overige or regels erbij?
De standaard filter van excel gebruiken zodat men in de bovenste rij deze zoek regels kan ingeven?quote:
Hiermee? http://blog.contextures.c(...)cel-index-and-match/quote:Op donderdag 30 april 2015 14:23 schreef nils7 het volgende:
- Win7-Excel 2013/Engelstalig
Ik ben bezig met het identificeren van toeleveringen van artikelen en loop tegen wat problemen.
Een uniek item (heeft gelukkig een unieke barcode) komt binnen en ik wil graag de datum van dat ding hebben wanneer die voor het eerst binnenkomt.
Doordat we die dingen laten repareren komt hetzelfde artikel uiteindelijk weer opnieuw binnen met dezelfde boekingscode.
Dus komt hij 2x binnen.
Ik ben op dit moment niet geïnteresseerd in wanneer die voor de tweede keer binnenkomt (of zelfs 3 of 4de keer wanneer er iets mis is gegaan) maar wanneer die voor het eerst is binnen gekomen.
Nu kan ik filteren op oudste bovenaan (als ik het via een VLookUp doe) maar wil het dummy-proof maken want voor het geval die sortering vergeten wordt dan moet het nog blijven werken.
Nu heb ik een sumproduct formule gevonden die voor mij per unieke ID een sorteringsnummer zet qua datum.
Dit is de formule die ik heb
=IF(G2="","",SUMPRODUCT(--(G:G=G2)*(M2>M:M))+1)
Met in kolom G de unieke ID's en in kolom M de datums.
De formule doet wat ie moet doen maar sumproduct is met 180.000 records erg traag.
Iemand anders een idee?
De sub Worksheet_Change werkt helaas niet met formules in cellenquote:
1 2 3 4 5 6 | Private Sub Worksheet_Calculate() If Range("de veranderde cel met formule").Value <> PrevVal Then je vergelijking maken en dan je teller doen End If End Sub |
De oorzaak is inderdaad dat de verandering van de cel in die andere kolommen zit.quote:Op donderdag 30 april 2015 00:24 schreef Anatomy01 het volgende:
[..]
Heel erg bedankt voor het schrijven van de code! Door de uitleg die je erbij hebt gezet, snap ik ook wat je doet. Ik heb het in de VB editor van het betreffende werkblad gezet en hij werkt inderdaad als cel C5 veranderd, maar niet als XFC1 veranderd en dit is nu juist wat ik heel graag wil. Ik denk dat ik ook snap wat er fout gaat, maar ik weet niet precies hoe ik dit moet oplossen. In XFC1 staat namelijk een formule (=SUMIFS(G:G;B:B;"="&1;H:H;"="&TODAY()) en hier wordt dus de waarde mee berekent. In het stukje zeg je dat als de waarde XFC1 (of C5) afhankelijk is van andere cellen, je dit moet toevoegen, maar het gaat hier om kolommen.
Hoe kan ik dat aangeven in de code?
PS: (ik heb het volgende geprobeerd, maar toen kreeg ik een error: If Target.Address = "$XFC$1" Or Target.Address = "$C$5" Or Target.Address = "$C:$C" Or Target.Adress = "$H:$H" Then )
Dat is een goede oplossing voor wanneer het ptobleem te groot gaat worden met het identificeren van welke cellen ja. Wel denk ik dat die iets moeilijker op te zetten is voor iemand die minder ervaring heeft met VBAquote:Op donderdag 30 april 2015 16:34 schreef Basp1 het volgende:
[..]
De sub Worksheet_Change werkt helaas niet met formules in cellen
Hier staat de oplossing:
http://stackoverflow.com/(...)changed-by-a-formula
En in de code zou het dan ongeveer er zo uitzien:
[ code verwijderd ]
Waarbij in de module dan nog het volgende staat.
Public PrevVal As Variant
In mijn ogen gaat dat niet helpen. Het is zo traag vanwege de array formule op elke regel wordt toegepast. Daar moet je vanaf. .quote:Op donderdag 30 april 2015 16:25 schreef qu63 het volgende:
[..]
Hiermee? http://blog.contextures.c(...)cel-index-and-match/
Je tekst klopt volgens mij niet helemaal of ik moet het helemaal verkeerd begrijpen. In kolom G staat niet je unique ID, want er staat wel een ID maar die komt op meerdere keren voor volgens mij. En in M staat dan je datum waarin die ID gebruikt is.quote:Op donderdag 30 april 2015 14:23 schreef nils7 het volgende:
Nu heb ik een sumproduct formule gevonden die voor mij per unieke ID een sorteringsnummer zet qua datum.
Dit is de formule die ik heb
=IF(G2="","",SUMPRODUCT(--(G:G=G2)*(M2>M:M))+1)
Met in kolom G de unieke ID's en in kolom M de datums.
Dan moet je alles op 1 en hetzelfde jaar zetten (2000 bv, want 29 feb moet ook een plaats krijgen). Stel je hebt een datumveld op K24, dan zet je op L24 de volgende formule: =DATUM(2000;MAAND(K24);DAG(K24)). Dan zullen de dag en maand van ongeacht welk jaar op K24 worden overgezet op dag-maand-2000.quote:Op vrijdag 1 mei 2015 11:51 schreef fetss het volgende:
[ afbeelding ]
Weet iemand hoe ik de 2015 uit de formulebalk verwijder?
Wil uiteindelijk een grafiek maken op datums over verschillende jaren, dus het jaartal moet uit de formulebalk
Alvast bedankt!
Hij doet het nuquote:Op donderdag 30 april 2015 23:45 schreef snabbi het volgende:
If Target.Address = "$XFC$1" Or Target.Address = "$C$5" Or _
Target.Column = 3 Or Target.Column = 8 Then
Ja klopt een ID die wel meer keer in de lijst voorkomt, ik ga het eens proberen.quote:Op vrijdag 1 mei 2015 00:13 schreef snabbi het volgende:
[..]
In mijn ogen gaat dat niet helpen. Het is zo traag vanwege de array formule op elke regel wordt toegepast. Daar moet je vanaf. .
[..]
Je tekst klopt volgens mij niet helemaal of ik moet het helemaal verkeerd begrijpen. In kolom G staat niet je unique ID, want er staat wel een ID maar die komt op meerdere keren voor volgens mij. En in M staat dan je datum waarin die ID gebruikt is.
Dus gegeven het feit dat in G je IDs staan en in M je datums, moet je een lijstje maken waarin elke ID inderdaad maar 1 keer voorkomt. Alleen voor dit lijstje moet je array formules toepassen, niet als hulpkolom in je hele dataset.
De formule moet zijn per unique ID:
=MIN(G:G="je unique product ID",M:M)
Dit is je eindresultaat. Wel als array formule invullen natuurlijk.
(uitleg volgt als dit is wat je zoekt en mooi maken doe je via
=IFERROR(MIN(G:G="je unique product ID",M:M),"")
)
Wanneer je wilt kunnen rekenen met een datum, dan heeft Excel een jaartal nodig. Dus wanneer je in je grafiek de slimheid tussen 1-jan 2-jan (lege ruimte) 4-jan wil gebruiken, dan ontkom je niet aan een jaartal.quote:Op vrijdag 1 mei 2015 11:51 schreef fetss het volgende:
[ afbeelding ]
Weet iemand hoe ik de 2015 uit de formulebalk verwijder?
Wil uiteindelijk een grafiek maken op datums over verschillende jaren, dus het jaartal moet uit de formulebalk
Alvast bedankt!
Ik was wat snel in mijn post en heb nu ook een voorbeeld online gezet:quote:Op vrijdag 1 mei 2015 17:24 schreef nils7 het volgende:
[..]
Ja klopt een ID die wel meer keer in de lijst voorkomt, ik ga het eens proberen.
Ongetwijfeld. Moet blad 2 op basis van blad 1 gegenereerd worden, of is dat handmatige invoer?quote:Op dinsdag 12 mei 2015 12:52 schreef Arnold_fan het volgende:
Is het mogelijk om in Excel in blad 1 een enorme lijst met namen te gooien die meerdere keren voorkomen, in blad 2 een lijst met een lijst met namen, en dan in blad 3 een kopie van blad 1 min alle regels die een naam hebben die in blad 2 voorkomt?
Dus bijvoorbeeld
blad 1
aa______zeist________oranje
bb______Rotterdam___geel
aa______zeist________geel
cc______Gouda_______roze
blad 2
bb
blad 3
aa______zeist________oranje
aa______zeist________geel
cc______Gouda_______roze
Blad 2 bouwt langzaam op, handmatig.quote:Op dinsdag 12 mei 2015 14:11 schreef Janneke141 het volgende:
[..]
Ongetwijfeld. Moet blad 2 op basis van blad 1 gegenereerd worden, of is dat handmatige invoer?
In blad3 zet je bijvoorbeeld in cel A2 de volgende formule neer:quote:Op dinsdag 12 mei 2015 12:52 schreef Arnold_fan het volgende:
Is het mogelijk om in Excel in blad 1 een enorme lijst met namen te gooien die meerdere keren voorkomen, in blad 2 een lijst met een lijst met namen, en dan in blad 3 een kopie van blad 1 min alle regels die een naam hebben die in blad 2 voorkomt?
Dus bijvoorbeeld
blad 1
aa______zeist________oranje
bb______Rotterdam___geel
aa______zeist________geel
cc______Gouda_______roze
blad 2
bb
blad 3
aa______zeist________oranje
aa______zeist________geel
cc______Gouda_______roze
Wat tips:quote:Op woensdag 13 mei 2015 11:03 schreef Crientj het volgende:
Meh. Iemand hier toevallig ervaring met het maken van Dashboards? Ik zit vast, en niet zo'n beetje ook. (Al moet ik wel toegeven dat ik nooit gebruik heb gemaakt van formules in excel en ik mezelf in het diepe heb gegooid). Ik doe mijn best om even uit te leggen wat ik nu heb staan.
Ik heb een enorme lijst met namen, een datasheet met meerdere tabbladen en de data die daarin staat is gefilterd op 4 landen.
De bedoeling is uiteindelijk dat ik kan selecteren per naam en vervolgens per land de data kan inzien. Binnen het dashboard verspringt dan de data mooi in een diagram enzovoort.
Die lijst met namen staan weergegeven in een controle tabblad, samen met een getal. In een dummy tabel geeft dit getal aan hoeveel regels hij naar beneden moet voor de juiste data bij de juiste naam.
Maar dan moet het nog worden weergegeven per land en ieder land moet aan te klikken zijn via een button. Het idee was om per land een aparte verschuiving te maken en zo weer te geven, maar dit schijnt niet te werken. Een ander idee was om dan twee aparte invul velden te gebruiken en dan die te verwijzen - 1 voor de verwijzing naar de hoeveelheid rijen, en 1 voor de hoeveelheid kolommen. Ik heb alleen geen idee hoe dit verder in elkaar zit.
Kortom, hoe link ik alles netjes aan elkaar zodat ik kan inzien wat iedere naam per land aan data heeft liggen?
Alles staat per grafiek op een ander tabblad. Vervolgens per naam en per land. Het is teveel data om in 1 tabblad te doen.quote:Op woensdag 13 mei 2015 11:41 schreef Twentsche_Ros het volgende:
[..]
Wat tips:
Gebruik altijd 1 tabblad en maak een degelijke database, die alle gegevens bevat.
En verdiep je in de wereld van draaitabellen.
De omschrijving die jij nu geeft, vind ik te verwarrend.
Dat lijkt me sterk..quote:Op woensdag 13 mei 2015 11:44 schreef Crientj het volgende:
[..]
Alles staat per grafiek op een ander tabblad. Vervolgens per naam en per land. Het is teveel data om in 1 tabblad te doen.
Nee, dit is hoe het aangeleverd is. Kan/mag daar verder niets aan veranderen. Het zou best wel kunnen werken op de een of andere manier, ik heb alleen geen idee hoe.quote:Op woensdag 13 mei 2015 11:51 schreef Twentsche_Ros het volgende:
[..]
Dat lijkt me sterk..
2^20 rijen (= 1.048.576 rijen)
2^14 kolommen (=16.384 kolommen)
te weinig???
Ik neem toch wel aan dat je niet dezelfde gegevens meerdere keren moet invoeren.
Waarom wil je meerdere gegevens in 1 veld proppen?quote:Op woensdag 13 mei 2015 12:09 schreef Crientj het volgende:
Grootste probleem is dat ik niet zie hoe je meerdere gegevens in 1 veld gaat proppen.
Ja weet ik niet. Ik weet niet zo goed hoe ik hiermee verder moet denk ikquote:Op woensdag 13 mei 2015 12:50 schreef Basp1 het volgende:
[..]
Waarom wil je meerdere gegevens in 1 veld proppen?
In dit geval niet.quote:Op woensdag 13 mei 2015 00:41 schreef Piger het volgende:
Ik gebruik altijd Als.fout(). Zelfde resultaat?
Welke versie van Excel gebruik je.quote:Op woensdag 13 mei 2015 11:03 schreef Crientj het volgende:
Meh. Iemand hier toevallig ervaring met het maken van Dashboards? Ik zit vast, en niet zo'n beetje ook. (Al moet ik wel toegeven dat ik nooit gebruik heb gemaakt van formules in excel en ik mezelf in het diepe heb gegooid). Ik doe mijn best om even uit te leggen wat ik nu heb staan.
Ik heb een enorme lijst met namen, een datasheet met meerdere tabbladen en de data die daarin staat is gefilterd op 4 landen.
De bedoeling is uiteindelijk dat ik kan selecteren per naam en vervolgens per land de data kan inzien. Binnen het dashboard verspringt dan de data mooi in een diagram enzovoort.
Die lijst met namen staan weergegeven in een controle tabblad, samen met een getal. In een dummy tabel geeft dit getal aan hoeveel regels hij naar beneden moet voor de juiste data bij de juiste naam.
Maar dan moet het nog worden weergegeven per land en ieder land moet aan te klikken zijn via een button. Het idee was om per land een aparte verschuiving te maken en zo weer te geven, maar dit schijnt niet te werken. Een ander idee was om dan twee aparte invul velden te gebruiken en dan die te verwijzen - 1 voor de verwijzing naar de hoeveelheid rijen, en 1 voor de hoeveelheid kolommen. Ik heb alleen geen idee hoe dit verder in elkaar zit.
Kortom, hoe link ik alles netjes aan elkaar zodat ik kan inzien wat iedere naam per land aan data heeft liggen?
eh nee. als fout geeft een resultaat wanneer verticaal zoeken niets vindt. Dus dan zou dit hetzelfde zijn.quote:Op woensdag 13 mei 2015 23:25 schreef snabbi het volgende:
[..]
In dit geval niet.
Als.fout toont het resultaat wanneer hij wel gevonden is, terwijl je juist wil dat hij niets toont wanneer hij in Blad2 staat. Dus als je een soort inverse van een als.fout zou kunnen maken, dan zou het wel werken. (als.nietfout?)
=ALS.FOUT(VERT.ZOEKEN(Blad1!A2;Blad2!A:A;1;ONWAAR);")quote:Op donderdag 14 mei 2015 00:56 schreef Piger het volgende:
[..]
eh nee. als fout geeft een resultaat wanneer verticaal zoeken niets vindt. Dus dan zou dit hetzelfde zijn.
Ik heb het ingevoerd, het eerste werkt inderdaad prima, dus ik krijg witte velden in de A kolom. De B en verder blijven gevuld, klaarblijkelijk ziet Excel deze velden niet als leeg waardoor hij overal de rest van de regels blijft weergeven.quote:Op dinsdag 12 mei 2015 23:40 schreef snabbi het volgende:
[..]
In blad3 zet je bijvoorbeeld in cel A2 de volgende formule neer:
=ALS(ISFOUT(VERT.ZOEKEN(Blad1!A2;Blad2!A:A;1;ONWAAR));Blad1!A2;"")
In B2 wordt het iets als: =ALS(ISLEEG($A2);"";Blad1!B2) <-- dit kan je naar rechts kopieren.
Vervolgens kan je alles naar beneden kopieren.
Wat doet het:
Je kijkt in A2 of de waarde van Blad1!A2 voorkomt in de kolom A in blad2. Wanneer dit WEL zo is, dan geeft deze VERT.ZOEKEN functie een goed resultaat. Wanneer het NIET zo is, dan geeft de VERT.ZOEKEN formule een ERROR. De ISFOUT functie vangt zo'n ERROR op. Is er een fout (dus komt niet voor in blad2), dan moet hij de waarde van blad1 weergeven. Staat hij er wel op dan een lege cel.
Het enige "lelijke" effect is dat je krijgt:
- Je krijgt tussendoor lege regels te zien. Dus op de plek van je "bb" zie je nu dus een lege regel.
- Je krijgt een 0 te zien wanneer je in Blad3 wel een formule hebt staan, maar in Blad1 staat op die regel geen waarde.
Uiteraard kunnen we beide cosmetisch oplossen, maar eerst checken of dit is wat je zoekt.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |