FOK!forum / Digital Corner / [Excel] Het grote Excel vragen topic #32
Deetchdinsdag 1 mei 2012 @ 10:33
2co31ux.jpg

Welkom bij “Het grote Excel vragentopic” waar je terecht kan met vragen over Excel.

In dit topic is het de bedoeling dat we gericht vragen stellen en antwoorden geven op de gestelde vragen. Om alles zo goed mogelijk te laten verlopen zijn er een aantal regels.

Regels
1. Als je een vraag stelt, zet er dan bij welke versie van Excel je hebt en op welke taal hij ingesteld staat.
2. Zet macrocode tussen [ code ] tags
3. Als het “pseudo-code” is, vermeldt dit dan duidelijk
4. Er bestaan geen domme vragen, wel domme antwoorden. Als jouw antwoord niet gaat bijdragen, geef het antwoord dan niet.
5. Dit topic is geen “code-FEBO” waar je half opgewarmde code uit de muur trekt, het is de bedoeling dat je er zelf iets van leert.

Definities
Functie Een interne functie die bij Excel is geleverd.
UDF Een “user definded function”, een zelfgebouwde functie
Macro Een stuk code die opdrachten uitvoert, gebouwd in (meestal) de VBA editor
Add-In Een Excel workbook met VBA-code (of C#, C) die als .xla (of .xll) is opgeslagen, deze is als vaste plug-in in Excel te plaatsen.
Workbook Het excelbestand
Sheet of Worksheet Het tabblad
Form, Formulier, Userform Een Dialoogvenster in VBA gebouwd

Tips & Links
De help functie van excel of visual basic voor excel kan je een eind op weg helpen. (F1)

Het workbook met het FOK!-menu zoals in de banner weergegeven is hier te vinden. Dit menu is naar wens aan te passen. De icoontjes in het menu zijn hier allemaal weergegeven. In dit workbook zijn drie macro's aanwezig: Een printertool waarmee je uit meerder workbooks sheets kan selecteren voo afdrukken, een power replace die termen kan wijzigen in meerdere workbooks tegelijk en een formule vertaler, de formule in de actieve cell wordt in het engels weergegeven, je kan ook een engelse formule invoeren die dan in de actieve cell in de geldende taal wordt geplaatst. De UDF is naar aanleiding van een vraag in topic #29. De functie kan worden aangeroepen door in een cel =FOK() te typen en dan op de Fx te klikken voor uitleg over de variabelen.

De VBA editor bereik je door ALT+F11 in te drukken. Vanaf Excel 2007 is de VBA editor lastiger te vinden. Op deze site wordt uitgelegd hoe je de editor kan activeren.

De interne functies zijn afhankelijk van welke taal jouw Excel draait. Op deze en deze site kun je de formules in verschillende talen vertalen.

De meer uitgebreide macro's kunnen traag worden, ook kan het scherm flikkeren als gevolg van veel "select" acties. Deels kun je dit ondervangen door zo veel mogelijk select acties te vervangen door directe verwijzingen naar cells en deels door een macro-optimalisatie door te voeren. In de onderstaande code is een routine voor macro-optimalisatie en een routine om de optimalisatie weer uit te zetten weergegeven. In de voorbeeld sheet is een uitgebreide versie van MOA en MOU opgenomen.

SPOILER
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub MOA()
'Macro optimalisatie aan
'Roep deze routine aan bij aanvang van jouw code

    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Application.EnableEvents = False
End Sub

Sub MOU()
'macro optimalisatie uit
'Roep deze routine aan na afloop van jouw code
'zorg er ook voor dat eventuele foutvangers ook verwijzen naar deze routine
    
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
    Application.EnableEvents = True
    Application.StatusBar = ""
End Sub
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.

SPOILER
1
2
3
4
5
6
***Pseudo-code***
for i = 1 to EndOfRoutine
Application.StatusBar = "Bezig met uitvoeren FOK! macro_1 " _
&  100 - cInt((EndOfRoutine - i)/ EndOfRoutine * 100) & " %"
'FOK!_macro_1 code
next
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 wiki

[ Bericht 1% gewijzigd door Deetch op 01-05-2012 12:59:37 ]
qu63dinsdag 1 mei 2012 @ 11:46
quote:
3s.gif Op dinsdag 1 mei 2012 10:22 schreef Deetch het volgende:
coole website die excelunusual. Ik heb zelf al een poosje een excelsheet met allemaal thermometer grafieken, ook leuk voor managementplaatjes.
Dan ga ik die maar eens checken! Het wordt weer eens tijd voor een leuk maar volkomen nutteloos Excel-sheetje :P

-edit- In de categorie zinloos maar cool, een 3D Flight Simulator! :D http://excelunusual.com/a(...)lator-video-preview/

Of Pong! WTF! http://excelunusual.com/a(...)-2003-video-preview/
qu63dinsdag 1 mei 2012 @ 11:53
WTF! Dat Excelunusual.com is echt gaaf! _O-
Deetchdinsdag 1 mei 2012 @ 12:49
mooi om de komkommertijd mee te vullen
VASNDdinsdag 1 mei 2012 @ 13:24
ff een vraagje.

Ik heb een lijst uitslagen van een studentensportevenement in deze vorm:

1
2
3
4
5
Groningen 1  10 punten
Nijmegen 1    8 punten
Eindhoven 2   6 punten 
Groningen 2   4 punten
Amsterdam 1   2 punten

En nu wil ik er voor zorgen dat alléén de hoogst gerankte teams per stad punten krijgen, maar ze moeten wel de punten van degenen onder hun 'weg kunnen pakken'. (dus plaats 4 krijgt in dit voorbeeld geen punten maar zorgt er wel voor dat 5 er maar 2 heeft). Hoe doe ik dit het makkelijkste?
Uiteindelijk heb ik een stuk of 10 uitslagenlijsten waarvan de punten opgeteld moeten worden per stad tot een eindklassement.
Deetchdinsdag 1 mei 2012 @ 14:34
Alleen het hoogst geplaatste team van een stad krijgt dus punten. Dat is dan toch niet eerlijk als je met je groningen 2 team 2x boven groningen 1 komt dan ben je dus als groningen 1 in hte nadeel. of is er ook een team ranking?

Ik zou in ieder geval overald de "punten" weglaten zodat je alleen cijfers hebt.

Kolom A1 en verder, teamnamen incl volgnummer
Kolom B score (aflopend gesorteerd)
Nieuwe kolom C: geschoonde namen =LEFT(A1,LEN(A1)-2)
Nieuwe kolom D, geschoonde punten
Cel D1: =B1
Cel D2 en verder =IF(ISERROR(VLOOKUP(C2,$C$1:C1,1,FALSE)),B2,0)

Optellen per stad:
=SUMIF(C1:C5,"groningen",D1:D5)
VASNDdinsdag 1 mei 2012 @ 15:37
quote:
3s.gif Op dinsdag 1 mei 2012 14:34 schreef Deetch het volgende:
Alleen het hoogst geplaatste team van een stad krijgt dus punten. Dat is dan toch niet eerlijk als je met je groningen 2 team 2x boven groningen 1 komt dan ben je dus als groningen 1 in hte nadeel. of is er ook een team ranking?

Ik zou in ieder geval overald de "punten" weglaten zodat je alleen cijfers hebt.

Kolom A1 en verder, teamnamen incl volgnummer
Kolom B score (aflopend gesorteerd)
Nieuwe kolom C: geschoonde namen =LEFT(A1,LEN(A1)-2)
Nieuwe kolom D, geschoonde punten
Cel D1: =B1
Cel D2 en verder =IF(ISERROR(VLOOKUP(C2,$C$1:C1,1,FALSE)),B2,0)

Optellen per stad:
=SUMIF(C1:C5,"groningen",D1:D5)
Top!
In de praktijk komen deelnemers per stad, onderverdeeld in verschillende teams. Ze werken dus naar een overwinning voor hun stad toe, niet per sé individueel. (voor de beeldvorming, het gaat hier over 11 steden).
Om de grootte van de afvaardiging (soms verschillen van 200 vs 50) minder invloedrijk te maken is er voor deze methode gekozen.

Zeer bedankt, hier kan ik weer even mee verder!
Erkannndinsdag 1 mei 2012 @ 15:38
quote:
10s.gif Op dinsdag 1 mei 2012 11:53 schreef qu63 het volgende:
WTF! Dat Excelunusual.com is echt gaaf! _O-
Lachen he :P
Deetchwoensdag 2 mei 2012 @ 08:15
quote:
14s.gif Op dinsdag 1 mei 2012 15:37 schreef VASND het volgende:

[..]

Top!
In de praktijk komen deelnemers per stad, onderverdeeld in verschillende teams. Ze werken dus naar een overwinning voor hun stad toe, niet per sé individueel. (voor de beeldvorming, het gaat hier over 11 steden).
Om de grootte van de afvaardiging (soms verschillen van 200 vs 50) minder invloedrijk te maken is er voor deze methode gekozen.

Zeer bedankt, hier kan ik weer even mee verder!
Oh ja, nog even een opmerking voor de functie van de geschoonde namen. Dit gaat dus alleen goed als de teamnamen minus de laatste 2 tekens alleen voor de zelfde stad hetzelfde zijn.
Dus "groningen 1" en "groningen 2" gaat goed maar "amsterdam" en "amsterdom" gaat dus mis omdat de geschoonde naam dan in beide gevallen "amsterd" is
Ook "Utrecht 1" en "Utrecht 21" gaat mis omdat de geschoonde namen dan "Utrecht" en "Utrecht " (met spatie) wordt. Dus als je teams hebt met een volgnummer >9 dan moet je =LEFT(A1,LEN(A1)-3) doen.
qu63woensdag 2 mei 2012 @ 08:50
quote:
3s.gif Op woensdag 2 mei 2012 08:15 schreef Deetch het volgende:

[..]

Oh ja, nog even een opmerking voor de functie van de geschoonde namen. Dit gaat dus alleen goed als de teamnamen minus de laatste 2 tekens alleen voor de zelfde stad hetzelfde zijn.
Dus "groningen 1" en "groningen 2" gaat goed maar "amsterdam" en "amsterdom" gaat dus mis omdat de geschoonde naam dan in beide gevallen "amsterd" is
Ook "Utrecht 1" en "Utrecht 21" gaat mis omdat de geschoonde namen dan "Utrecht" en "Utrecht " (met spatie) wordt. Dus als je teams hebt met een volgnummer >9 dan moet je =LEFT(A1,LEN(A1)-3) doen.
Kan je dan niet beter op zoek naar de laatste spatie en vanaf daar afkappen?
Deetchwoensdag 2 mei 2012 @ 09:13
quote:
0s.gif Op woensdag 2 mei 2012 08:50 schreef qu63 het volgende:

[..]

Kan je dan niet beter op zoek naar de laatste spatie en vanaf daar afkappen?
Dat is natuurlijk veel beter: =LEFT(A1,FIND(" ",A1)-1)

Dat gaat alleen mis dan met Den Bosch en Den Haag want dat wordt allebei "Den"
en met teams zonder spatie.

Dit is nog beter dan: =IFERROR(LEFT(A1,FIND(" ",A1)-1),A1)
qu63woensdag 2 mei 2012 @ 12:22
quote:
3s.gif Op woensdag 2 mei 2012 09:13 schreef Deetch het volgende:

[..]

Dat is natuurlijk veel beter: =LEFT(A1,FIND(" ",A1)-1)

Dat gaat alleen mis dan met Den Bosch en Den Haag want dat wordt allebei "Den"
en met teams zonder spatie.
Vandaar dat ik zei laatste spatie ;), als het tenminste altijd PLAATSNAAM SPATIE CIJFER is..
Deetchwoensdag 2 mei 2012 @ 12:46
Maar hoe doe je de laatste spatie vinden dan? Kun je met find ook vanaf rechts zoeken?
Al googelend kom ik wat leuke shizzle tegen.
Deetchwoensdag 2 mei 2012 @ 12:50
positie van laatste spatie vinden:
=FIND("|",SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))

laatste woord in een tekststring:
=RIGHT(A1,LEN(A1)-FIND("|",SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ","")))))

alle tekst voor de laatste spatie:
=LEFT(A1,FIND("|",SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))+1)

Bron: http://stackoverflow.com/(...)el-without-using-vba
Hierin wordt ook uitgelegd hoe je om moet gaan met bijzondere gevallen (geen spatie, laatste teken is een spatie etc)
Deetchwoensdag 2 mei 2012 @ 12:51
en een hendig sjieke UDF om een tekstring om te draaien:

1
2
3
4
5
6
7
8
9
10
11
12
13
Function strReverse(text) As String
'
' Returns its argument, reversed
' J. Walkenbach
'
Dim TextLen As Integer
Dim i As Integer

TextLen = Len(text)
For i = TextLen To 1 Step -1
strReverse = strReverse & Mid(text, i, 1)
Next i
End Function
McGilleswoensdag 2 mei 2012 @ 20:19
quote:
3s.gif Op woensdag 2 mei 2012 12:50 schreef Deetch het volgende:
positie van laatste spatie vinden:
=FIND("|",SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))

laatste woord in een tekststring:
=RIGHT(A1,LEN(A1)-FIND("|",SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ","")))))

alle tekst voor de laatste spatie:
=LEFT(A1,FIND("|",SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))+1)

Bron: http://stackoverflow.com/(...)el-without-using-vba
Hierin wordt ook uitgelegd hoe je om moet gaan met bijzondere gevallen (geen spatie, laatste teken is een spatie etc)
Maar dan elke , moet een ; worden.

=RIGHT(A1;LEN(A1)-FIND("|";SUBSTITUTE(A1;" ";"|";LEN(A1)-LEN(SUBSTITUTE(A1;" ";"")))))
qu63woensdag 2 mei 2012 @ 20:45
quote:
0s.gif Op woensdag 2 mei 2012 20:19 schreef McGilles het volgende:

[..]

Maar dan elke , moet een ; worden.

=RIGHT(A1;LEN(A1)-FIND("|";SUBSTITUTE(A1;" ";"|";LEN(A1)-LEN(SUBSTITUTE(A1;" ";"")))))
Dan moet je alles vertalen right=rechts, etc ;)
qu63donderdag 3 mei 2012 @ 14:25
Hier zitten ook wel wat nuttige tips tussen: http://www.automateexcel.com/
Deetchdonderdag 3 mei 2012 @ 16:06
quote:
0s.gif Op woensdag 2 mei 2012 20:19 schreef McGilles het volgende:

[..]

Maar dan elke , moet een ; worden.

=RIGHT(A1;LEN(A1)-FIND("|";SUBSTITUTE(A1;" ";"|";LEN(A1)-LEN(SUBSTITUTE(A1;" ";"")))))
Tja dat verschilt per taalversie en windows instelling.

Windows instelling: lijstscheidingsteken of list seperator kan dus een ; of , zijn

Office instelling: taal NL of EN: nederlandse functienamen of engelse

Meestal heb je de combinatie ; met NL functie namen of , met EN functie namen
VASNDdonderdag 3 mei 2012 @ 16:29
Haha helden, ik had idd één teamnummer 10.
Omdat het maar 1 team was heb ik dit opgelost door de spatie tussen team en teamnummer weg te halen.
Het is gelukt, bedankt!
_superboer_donderdag 3 mei 2012 @ 17:58
Ik werk hier met de Engelse versie van Excel 2000. Hierin probeer ik een formule te vinden die in een tabel van H3 tot J123 de eerste rij zoekt waarin een andere waarde dan 0 voorkomt. Van die rij moet dan de waarde uit kolom G worden gegeven.

Ik zat zelf al te denken aan een vlookup voor kolom H, I en J, maar dan zou ik de waarde van een negatieve kolom in vlookup nodig hebben en dat werkt niet. Iemand een idee hoe het wel zou kunnen?
qu63donderdag 3 mei 2012 @ 18:08
quote:
0s.gif Op donderdag 3 mei 2012 17:58 schreef _superboer_ het volgende:
Ik werk hier met de Engelse versie van Excel 2000. Hierin probeer ik een formule te vinden die in een tabel van H3 tot J123 de eerste rij zoekt waarin een andere waarde dan 0 voorkomt. Van die rij moet dan de waarde uit kolom G worden gegeven.
Bedoel je niet de eerste kolom?
quote:
Ik zat zelf al te denken aan een vlookup voor kolom H, I en J, maar dan zou ik de waarde van een negatieve kolom in vlookup nodig hebben en dat werkt niet. Iemand een idee hoe het wel zou kunnen?
In kolom K =G1 etc zetten en eventueel verbergen :)
Deetchdonderdag 3 mei 2012 @ 19:56
Kolom F invoegen met de vermenigvuldiging van de oude H, I en J. vervolgens Vlookup doen op de waarde 0
_superboer_donderdag 3 mei 2012 @ 20:57
quote:
0s.gif Op donderdag 3 mei 2012 18:08 schreef qu63 het volgende:

[..]

Bedoel je niet de eerste kolom?
Nee, in G1 staat een bepaalde datum, in de andere kolommen wat er in of uit een magazijn ging op die datum. Ik wil de eerste datum hebben waarop zo'n wijziging plaats vond.

quote:
[..]

In kolom K =G1 etc zetten en eventueel verbergen :)
Dat kan niet netter?

quote:
3s.gif Op donderdag 3 mei 2012 19:56 schreef Deetch het volgende:
Kolom F invoegen met de vermenigvuldiging van de oude H, I en J. vervolgens Vlookup doen op de waarde 0
En hoe kan ik vlookup doen op de eerste waarde die niet 0 is?
qu63donderdag 3 mei 2012 @ 21:42
quote:
0s.gif Op donderdag 3 mei 2012 20:57 schreef _superboer_ het volgende:

[..]

Nee, in G1 staat een bepaalde datum, in de andere kolommen wat er in of uit een magazijn ging op die datum. Ik wil de eerste datum hebben waarop zo'n wijziging plaats vond.
Dan kolom XYZ ;) De eerstvolgende lege kolom iig ;)
quote:
Dat kan niet netter?
Nope, negatieve verwijzing in H/VLOOKUP kunnen niet.
DaFandonderdag 3 mei 2012 @ 22:09
quote:
0s.gif Op donderdag 3 mei 2012 21:42 schreef qu63 het volgende:

Nope, negatieve verwijzing in H/VLOOKUP kunnen niet.
Dan gebruik je toch INDEX( MATCH( ??
qu63donderdag 3 mei 2012 @ 22:31
quote:
5s.gif Op vrijdag 16 maart 2012 17:12 schreef qu63 het volgende:
Uitdaging:
Ben bezig om een urenregistratie in elkaar te zetten in Excel. Nu zijn deze al vaak genoeg langsgekomen in deze reeks, alleen gaat het in dit geval om touringcarchauffeurs. Deze hebben ook te maken met wettelijk rij- en rusttijden.

Wat ik wil is dat ik netjes in mijn overzicht te zien krijg of er overtredingen zijn (te weinig rust, te lang gereden). Ik heb onderstaand schema wat hiervoor van belang is:

[..]

Voorbeeldsheet: http://www.svenahrens.nl/Rijrust.xls (Excel 2007, NL)

Voor 1 dag kan ik makkelijk bepalen of ik binnen de wet blijf of niet, over een week, maand of jaar wordt het een heel ander verhaal. Het aantal voorwaarden maken me dan een beetje duizilig :P Kan iemand me hiermee helpen?
Opmaak van de voorbeeldsheet is niet leidend, als ik maar per sheet een maand heb waarop ik per dag (24u) alles in kan vullen..

In de voorbeeldsheet moet nu dus een melding komen dat ik op 13-3 nog niet had mogen rijden omdat ik te weinig rust had. Op 14-3 moet er komen staan dat ik te lang (15 minuten) gereden heb.
Op 15-3 hield ik me wel netjes aan de tijden, maar op 16-3 niet meer omdat ik dan al 2x 10 uur gereden heb die week.
Ben er de laatste tijd zelf mee aan t klooien geweest, maar het is te ingewikkeld en onpraktisch om in Excel te doen. Het begint al met de invoer van de tijden, dat moet handmatig en op de minuut nauwkeurig. Het kan namelijk voorkomen dat ik 1 minuut rij, die moet dan wel genoteerd worden omdat mijn pauze onderbroken is.

Helaas, dan maar werken met verschillende systemen :)
Ook ivm budget, er zijn commerciële toepassingen, maar die zijn te uitgebreid, te duur en niet geschikt voor een klein bedrijf ;(
_superboer_vrijdag 4 mei 2012 @ 11:50
quote:
7s.gif Op donderdag 3 mei 2012 22:09 schreef DaFan het volgende:

[..]

Dan gebruik je toch INDEX( MATCH( ??
Hiermee is het gelukt :)

Nu ben ik bij de volgende uitdaging aangekomen: ik laat een macro een bepaalde waarde in een cel plaatsen. Op basis hiervan moeten er nieuwe gegevens uit een database getrokken worden, die excel dan vervolgens kan kopieren naar een nieuw tablad. Hoe kan ik de macro laten wachten zodat de cellen geupdate kunnen worden en de juiste gegevens dus gekopieerd worden? Met "Application.Wait Now + TimeSerial(0, 0, 15)" lukt het niet omdat in die tijd de cellen niet geupdate worden.
Deetchvrijdag 4 mei 2012 @ 12:01
Zou hiermee kunnen:

1
2
3
4
5
6
Sub asd()
 MsgBox ("start calculation")
 Application.CalculateFull
 MsgBox ("calculation complete")
 End Sub
 
realbasevrijdag 4 mei 2012 @ 12:47
ok vraagje.

Ik heb een sheet met een aantal tabbladen ( verschillende regio's ).
Op elk tab staan de eventuele issues beschreven in die regio die opgepakt moeten worden.
Even een voorbeeld

A1 = start date issue
B1 = Closed date issue

Ik wil op een voorblad een dashboard maken met daarin in ieder geval de info :
openstaande issues < 30 dagen
openstaande issues 30-60 dagen
openstaande issues 60+ dagen

Weet iemand hoe ik dit het beste aan kan pakken.
Ik kom een eind, echter issues die nog niet closed zijn kan ik niet automatisch uitrekenen hoeveel dagen hij al open staat ( geprobeerd met formule met =TODAY() maar lukte niet :)

graag jullie ideeen :) thx !
qu63vrijdag 4 mei 2012 @ 12:52
quote:
0s.gif Op vrijdag 4 mei 2012 12:47 schreef realbase het volgende:
ok vraagje.

Ik heb een sheet met een aantal tabbladen ( verschillende regio's ).
Op elk tab staan de eventuele issues beschreven in die regio die opgepakt moeten worden.
Even een voorbeeld

A1 = start date issue
B1 = Closed date issue

Ik wil op een voorblad een dashboard maken met daarin in ieder geval de info :
openstaande issues < 30 dagen
openstaande issues 30-60 dagen
openstaande issues 60+ dagen

Weet iemand hoe ik dit het beste aan kan pakken.
Ik kom een eind, echter issues die nog niet closed zijn kan ik niet automatisch uitrekenen hoeveel dagen hij al open staat ( geprobeerd met formule met =TODAY() maar lukte niet :)

graag jullie ideeen :) thx !
=today()-STARTDATUM al geprobeerd?
Deetchvrijdag 4 mei 2012 @ 12:54
achter elke issue een kolom maken met daarin de functie:

=if(B1<>"", "Completed",TODAY()-A1)

Vervolgens kun je countif doen op deze kolom (bijv kolom C)

aantal openstaande issues korter dan 30 dagen
=countif(c1:c40,"<30")

aantal openstaande issues tussen 30 en 60 dagen
=countif((c1:c40,"<60")-countif(c1:c40,"<30")

aantal openstaande issues langer dan 60 dagen
=countif(c1:c40,">=60")

Het is wel belangrijk dat je data in kolom A ook echt als datum zijn weergegeven en niet als een tekst.
realbasevrijdag 4 mei 2012 @ 13:08
quote:
3s.gif Op vrijdag 4 mei 2012 12:54 schreef Deetch het volgende:
achter elke issue een kolom maken met daarin de functie:

=if(B1<>"", "Completed",TODAY()-A1)

Vervolgens kun je countif doen op deze kolom (bijv kolom C)

aantal openstaande issues korter dan 30 dagen
=countif(c1:c40,"<30")

aantal openstaande issues tussen 30 en 60 dagen
=countif((c1:c40,"<60")-countif(c1:c40,"<30")

aantal openstaande issues langer dan 60 dagen
=countif(c1:c40,">=60")

Het is wel belangrijk dat je data in kolom A ook echt als datum zijn weergegeven en niet als een tekst.
Hi Deetsch,

Ik heb je formule geprobeerd, geeft me echter het volgende :
( let niet op de cel nummers, die zijn in mn sheet anders dan in mn voorbeeld )

=IF(L2<>"";"Closed";TODAY()-B2)
en dan geeft hij in de cell "Closed" als er al een datum staat, als cell leeg is bij closed date werkt het wel
Deetchvrijdag 4 mei 2012 @ 13:14
quote:
0s.gif Op vrijdag 4 mei 2012 13:08 schreef realbase het volgende:

[..]

Hi Deetsch,

Ik heb je formule geprobeerd, geeft me echter het volgende :
( let niet op de cel nummers, die zijn in mn sheet anders dan in mn voorbeeld )

=IF(L2<>"";"Closed";TODAY()-B2)
en dan geeft hij in de cell "Closed" als er al een datum staat, als cell leeg is bij closed date werkt het wel
Dat is toch ook logisch aangezien je in cel B de datum van afsluiten hebt neergezet als de call is afgesloten?
Deetchvrijdag 4 mei 2012 @ 13:15
oh wacht. je wil weten hoe lang een call open is geweest?
dan kun je gewoon B1-A1 ipv "Closed" doen want datums kun je gewoon van elkaar aftrekken als getallen.

Waarom doe je L2 ipv B2?
realbasevrijdag 4 mei 2012 @ 13:27
/edit. opgelost :)

[ Bericht 96% gewijzigd door realbase op 04-05-2012 13:34:39 ]
Deetchvrijdag 4 mei 2012 @ 14:17
quote:
0s.gif Op vrijdag 4 mei 2012 13:27 schreef realbase het volgende:
/edit. opgelost :)
Het is eigenlijk niet de bedoeling dat je je vraag weer weghaalt, misschien heeft iemand anders ook iets aan jouw oplossing.
realbasevrijdag 4 mei 2012 @ 14:26
sorry ! Mn vraag was stom.. jij werkt met komma's en mijn excel accepteerd alleen ;
Vandaar dat het fout ging :)
realbasevrijdag 4 mei 2012 @ 22:01
Nog 1 vraagje

Ik probeer deze formule werkend te krijgen, maar hij wil niet.

=IF(M3="Open";TODAY()-B3;"")

Wat ik wil is dat hij uitrekent als de tekst "Open" in die Cell staat hij TODAY() minus de start datum pakt en dus uitrekent hoeveel dagen hij open staat.

What am I doing wrong :)


Ps. weet je nog Deetsch 11 januari 2007.. dag om nooit te vergeten !

[Excel] Het grote Excel vragen topic :)

[ Bericht 25% gewijzigd door realbase op 04-05-2012 22:31:03 ]
Deetchmaandag 7 mei 2012 @ 08:33
quote:
0s.gif Op vrijdag 4 mei 2012 22:01 schreef realbase het volgende:
Nog 1 vraagje

Ik probeer deze formule werkend te krijgen, maar hij wil niet.

=IF(M3="Open";TODAY()-B3;"")

Wat ik wil is dat hij uitrekent als de tekst "Open" in die Cell staat hij TODAY() minus de start datum pakt en dus uitrekent hoeveel dagen hij open staat.

What am I doing wrong :)

Ps. weet je nog Deetsch 11 januari 2007.. dag om nooit te vergeten !

[Excel] Het grote Excel vragen topic :)
Ach ja dat was een goed idee voor een topic reeks. Brings back memries:

We zitten nu in het eerste lustrum, cool ^O^

[OT]
Volgens mij is die code goed met de volgende voorwaarden:
• Je moet inderdaad ; gebruiken ipv , in jouw configuratie
• B3 bevat een datum (dus geen tekst) en deze is ouder dan de datum van vandaag (anders error)
• In M3 staat daadwerkelijk "Open" en niet bijvoorbeeld "open" (zonder hoofdletter) of "open " (met spatie)
• Je hebt een engelse excel versie, anders: =ALS(M3="Open";TODAY()-B3;"")
Cue_maandag 7 mei 2012 @ 08:35
quote:
3s.gif Op maandag 7 mei 2012 08:33 schreef Deetch het volgende:

• Je hebt een engelse excel versie, anders: =ALS(M3="Open";TODAY()-B3;"")
Is het dan niet VANDAAG() ?
Prof_Hoaxmaandag 7 mei 2012 @ 08:36
Ik heb een vraag of iets mogelijk is. ALs dit zo is ga ik kijken of ik het voor elkaar krijg :9

Kan je in een excel file een "draft" van een e-mail invoegen. Dus ipv mailto: en dan een blanko mailtje te krijgen, een mail met ontvangers/inhoud vooringevuld?

(office 2007 taal: ENG . opslag doel --> sharepoint)
Deetchmaandag 7 mei 2012 @ 09:45
quote:
5s.gif Op maandag 7 mei 2012 08:35 schreef Cue_ het volgende:

[..]

Is het dan niet VANDAAG() ?
maandag }:| maar inderdaad =ALS(M3="Open";VANDAAG()-B3;"")
Deetchmaandag 7 mei 2012 @ 09:46
quote:
99s.gif Op maandag 7 mei 2012 08:36 schreef Prof_Hoax het volgende:
Ik heb een vraag of iets mogelijk is. ALs dit zo is ga ik kijken of ik het voor elkaar krijg :9

Kan je in een excel file een "draft" van een e-mail invoegen. Dus ipv mailto: en dan een blanko mailtje te krijgen, een mail met ontvangers/inhoud vooringevuld?

(office 2007 taal: ENG . opslag doel --> sharepoint)
Zal ws. via een macrootje moeten. Is dat OK?
Prof_Hoaxmaandag 7 mei 2012 @ 10:44
quote:
3s.gif Op maandag 7 mei 2012 09:46 schreef Deetch het volgende:

[..]

Zal ws. via een macrootje moeten. Is dat OK?
Ik heb geen idee. Nog nooit mee gewerkt. Kan dit opgeslagen worden zonder extra files te uploaden? het zit zo, ik moet een documentje maken met een inventarisatie van spullen. Als collega's (van over heel de wereld) klikken op een contact button van die site wil ik een mailtje met daarin een "aan" adres een "cc" adres en een tekst veld waar ze zelf nog maar enkele dingen aan toe moeten voegen.
Het zou gaan om een mailtje via Outlook, vanuit excell 2007 (outlook ook 2007) :+ Is dat lastig te realiseren?
Als dit relatief eenvoudig is zal ik me er eens voor zetten, is dit vergevorderd ga ik het laten :@
yozdmaandag 7 mei 2012 @ 10:59
Ik probeer een grafiek te koppelen van Excel naar Word en dat lukt met speciaal plakken. Ik heb nu de grafiek in Excel echter bewerkt door er links en rechts een tekstvak naast te zetten. Ik heb nu dus 3 "plaatjes":

[tekst] [grafiek] [tekst]

Deze heb ik gegroepeerd.

Als ik nu het "totaalplaatje" kopieer vanuit Excel en speciaal plak in Word dan is de optie "koppeling plakken" niet meer mogelijk. Hoe kan dat? En is dat op te lossen?
Deetchmaandag 7 mei 2012 @ 11:02
koppeling plakken werkt alleen met een alleen de grafiek en niet met een groepering want dat is nl. naast de grafiek ook nog de tekstvakken. Dat snapt word dan niet. Kun je niet beter de tekstvakken dan pas in word er bij plaatsen misschien dat het dan wel wil.

Dus eerst de excel grafiek als koppeling plakken in word en dan de tekstvakken in word en dan groeperen.
Deetchmaandag 7 mei 2012 @ 11:08
quote:
99s.gif Op maandag 7 mei 2012 10:44 schreef Prof_Hoax het volgende:

[..]

Ik heb geen idee. Nog nooit mee gewerkt. Kan dit opgeslagen worden zonder extra files te uploaden? het zit zo, ik moet een documentje maken met een inventarisatie van spullen. Als collega's (van over heel de wereld) klikken op een contact button van die site wil ik een mailtje met daarin een "aan" adres een "cc" adres en een tekst veld waar ze zelf nog maar enkele dingen aan toe moeten voegen.
Het zou gaan om een mailtje via Outlook, vanuit excell 2007 (outlook ook 2007) :+ Is dat lastig te realiseren?
Als dit relatief eenvoudig is zal ik me er eens voor zetten, is dit vergevorderd ga ik het laten :@
Wordt hier duidelijk uitgelegd. http://www.ozgrid.com/VBA/send-email.htm

Hoe maak je nu een macro:
Neem een macro op (willekeurig wat). In office 2007 moet je de ribbon developer wel aanzetten.
Ga naar visual basic (via de ribbon developer of ALT+F11) en zoek dan je spreadsheet op en daaronder dan de module1.
Hier staat nu de code van je opgenomen macro. Vervang deze code door de code uit de website hierboven en pas het adres en de subject aan.
Vervolgens maak je een knop op je spreadsheet en koppelt daar je macro aan (rechtermuis op knop klikken)
Deetchmaandag 7 mei 2012 @ 11:19
Je kunt in de sendmail code geen CC toevoegen maar wel naar twee adressen mailen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub Send1Sheet_ActiveWorkbook() 
     'Create a new Workbook Containing 1 Sheet  And sends As attachment. 
     
    Dim Recip() 
    
ThisWorkbook.Sheets(15).Copy 
With ActiveWorkbook 
         
        Redim Preserve Recip(0) 
        Recip(0) = "michael.oriordan@test.com" 
        Redim Preserve Recip(1) 
        Recip(1) = "michael.oriordan2@test.com" 
         'and so on
        
        .SendMail Recipients:=Recip, _ 
        Subject:="Debrief " & Format(Date, "dd/mmm/yy") 
        .Close SaveChanges:=False 
    End With 
     
End Sub 

Of als je toch echt een CC wilt dan kun je de outlook object route gebruiken:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub Mailer()
Sheets("BB Email Data").Select
pathname = [b11].value 'defines attachment
dname = [b14].value 'defines date for subject
Dim objol As New outlook.Application
Dim objmail As MailItem
Set objol = New outlook.Application
Set objmail = objol.createitem(olmailitem)
    With objmail
        .To = "whoever" 'enter in here the email address
        .cc = "whoever" 'enter in here the email address
        .Subject = "Daily test email for  " & dname
        .Body = "Please find attached the teste email" & _
            vbCrLf & "If you have any queries can you please let me know" & vbCrLf
        .NoAging = True
        .Attachments.Add pathname 'adds attachment to email
        .display
    End With
    Set objmail = Nothing
    Set objol = Nothing
    SendKeys "%{s}", True 'send the email without prompts
    
End Sub
Prof_Hoaxmaandag 7 mei 2012 @ 11:43
Wow Deetch! Dank je wel ^O^ Eens naar kijken als ik tijd heb, deze week. Ik laat het resultaat weten O+
yozdmaandag 7 mei 2012 @ 11:53
quote:
3s.gif Op maandag 7 mei 2012 11:02 schreef Deetch het volgende:
Dus eerst de excel grafiek als koppeling plakken in word en dan de tekstvakken in word en dan groeperen.
Ok dan ga ik het zo doen. Bedankt!
Deetchmaandag 7 mei 2012 @ 13:04
quote:
99s.gif Op maandag 7 mei 2012 11:43 schreef Prof_Hoax het volgende:
Wow Deetch! Dank je wel ^O^ Eens naar kijken als ik tijd heb, deze week. Ik laat het resultaat weten O+
Ach ja als je weet waar je moet google-en kom je een heel eind.
Deetchmaandag 7 mei 2012 @ 13:07
quote:
0s.gif Op maandag 7 mei 2012 11:53 schreef yozd het volgende:

[..]

Ok dan ga ik het zo doen. Bedankt!
Werkt niet kom ik net achter. Je kunt een gekoppelde grafiek niet groeperen.
gerrit098maandag 7 mei 2012 @ 21:43
Laatst heb ik hier hulp gekregen met de volgende formule:

=SOM(INDIRECT(C1&":"&C2))

Nu werkt dit goed maar heb daar wel een volgende vraag op, kan ik deze formule gebruiken om gegevens uit een ander excel document te halen

Hierbij heb ik de volgende formule:

=SOM('[persoon1 2012.xlsx]Blad1'!$C$129:$C$135)
=SOM('[persoon2 2012.xlsx]Blad1'!$C$129:$C$135)

Alleen ik heb al wat geprobeerd maar dat INDIRECT krijg ik er niet in. Weet iemand hoe ik dan de formule moet op bouwen??
snabbimaandag 7 mei 2012 @ 23:42
Weet niet precies wat je uit de tekst van de andere cellen moet halen en wat je er als een vaste waarde in wilt zetten:

A1 = bestandsnaam (voorbeeld: persoon1 2012) <-- dus zonder de xlsx
A2 = bladnaam (voorbeeld: blad1)
A3 = beginpunt (voorbeeld: C129)
A4 = eindpunt (voorbeeld: C135)

=SOM(INDIRECT("'["&A1&"]"&A2&"'!"&A3&":"&A4))

[ Bericht 6% gewijzigd door snabbi op 07-05-2012 23:52:19 ]
Deetchdinsdag 8 mei 2012 @ 12:20
quote:
0s.gif Op maandag 7 mei 2012 23:42 schreef snabbi het volgende:
Weet niet precies wat je uit de tekst van de andere cellen moet halen en wat je er als een vaste waarde in wilt zetten:

A1 = bestandsnaam (voorbeeld: persoon1 2012) <-- dus zonder de xlsx
A2 = bladnaam (voorbeeld: Blad1)
A3 = beginpunt (voorbeeld: $C$129)
A4 = eindpunt (voorbeeld: $C$135)

=SOM(INDIRECT("'["&A1&"]"&A2&"'!"&A3&":"&A4))
of nog beter in cel A1 alleen de naam van persoon1 (of 2 etc) en dan onderstaande formule (vrijwel hetzelfde hoor)

=SOM(INDIRECT("'["&A1&" 2012.xlsx]"&A2&"'!"&A3&":"&A4))

of als alleen de naam variabel is (en in A1 staat):

=SOM(INDIRECT("'["&A1&" 2012.xlsx]Blad1'!$C$129:$C$135"))
Antilurkerdinsdag 8 mei 2012 @ 21:15
Hallo,
ik ben nu bezig met een schema van het EK van 2012, vind ik wel leuk om eens zelf proberen te maken.
Maar nu zit ik met een probleem;
SPOILER
nwrsx.png
(Uitslagen heb ik zelf verzonnen, logisch.)
In het geselecteerde deel komt nu dus het land met de meeste punten te staan. Maar dan niet het land zelf, maar het grootste aantal punten. Nu wil ik daar dus het land zelf met de meeste punten krijgen, zonder het aantal punten dat ze hebben. Weet iemand een manier om automatisch de bepaalde winnaar te linken aan het land dat helemaal links staat, en die er gelijk neer te zetten?
bijv. van Poule 1 is Polen de winnaar met 5 punten, dus dat is G2, maar dan moet het dus automatisch veranderd worden in G2 > 6 cellen naar links.

bvd
Deetchwoensdag 9 mei 2012 @ 08:49
quote:
3s.gif Op dinsdag 8 mei 2012 21:15 schreef Antilurker het volgende:
Hallo,
ik ben nu bezig met een schema van het EK van 2012, vind ik wel leuk om eens zelf proberen te maken.
Maar nu zit ik met een probleem;
SPOILER
(Uitslagen heb ik zelf verzonnen, logisch.)
In het geselecteerde deel komt nu dus het land met de meeste punten te staan. Maar dan niet het land zelf, maar het grootste aantal punten. Nu wil ik daar dus het land zelf met de meeste punten krijgen, zonder het aantal punten dat ze hebben. Weet iemand een manier om automatisch de bepaalde winnaar te linken aan het land dat helemaal links staat, en die er gelijk neer te zetten?
bijv. van Poule 1 is Polen de winnaar met 5 punten, dus dat is G2, maar dan moet het dus automatisch veranderd worden in G2 > 6 cellen naar links.

bvd
Probeer eens:
=INDIRECT("A"&MATCH(LARGE(G2:G5,1),G2:G5,0)+1)

MATCH bepaald de relatieve positie in de cellen G2:G5 waarin de 1e grootste waarde ((LARGE(G2:G5,1)) staat van de cellen G2:G5. Dat is zeg maar het rijnummer waarbij G2 rij 1 is, dus je moet voor het echte rijnummer er 1 bij optellen (vandaar de +1 aan het eind)

Vervolgens doe je met INDIRECT de cel in kolom A opvragen met het juiste rijnummer.

Voor poule B wordt het dus G6:G9 en +5

Voor de tweede plaatst wordt het dan LARGE(G2:G5,2) en de rest blijft hetzelfde

En in het NL: =INDIRECT("A"&VERGELIJKEN(GROOTSTE(G2:G5;1);G2:G5;0)+1)

Geen idee hoe het gaat met gelijke puntenaantallen, misschien moet je daar handmatig 0,1 bij optellen om de echte nummer 1 of 2 te krijgen.

[ Bericht 8% gewijzigd door Deetch op 09-05-2012 09:12:08 ]
Twentsche_Roswoensdag 9 mei 2012 @ 11:53
quote:
3s.gif Op woensdag 9 mei 2012 08:49 schreef Deetch het volgende:

[..]

Probeer eens:
=INDIRECT("A"&MATCH(LARGE(G2:G5,1),G2:G5,0)+1)

MATCH bepaald de relatieve positie in de cellen G2:G5 waarin de 1e grootste waarde ((LARGE(G2:G5,1)) staat van de cellen G2:G5. Dat is zeg maar het rijnummer waarbij G2 rij 1 is, dus je moet voor het echte rijnummer er 1 bij optellen (vandaar de +1 aan het eind)

Vervolgens doe je met INDIRECT de cel in kolom A opvragen met het juiste rijnummer.

Voor poule B wordt het dus G6:G9 en +5

Voor de tweede plaatst wordt het dan LARGE(G2:G5,2) en de rest blijft hetzelfde

En in het NL: =INDIRECT("A"&VERGELIJKEN(GROOTSTE(G2:G5;1);G2:G5;0)+1)

Geen idee hoe het gaat met gelijke puntenaantallen, misschien moet je daar handmatig 0,1 bij optellen om de echte nummer 1 of 2 te krijgen.
Het probleem van gelijke aantallen kun je oplossen door bv de karakter/ascii/codes van de eerste 4 letters van het land op te tellen en door 1000 te delen. Zodat je een differentiatie krijgt binnen de groep van evenveel punten. Misschien moet je een aparte (verborgen) kolom hiervoor aanmaken.
draadstaligwoensdag 9 mei 2012 @ 12:05
Al fok!ers die een EK poule 2012 in elkaar hebben geknutseld?
DaFanwoensdag 9 mei 2012 @ 12:06
Waarom doe je geen offset met address voor de gelijke punten?
qu63woensdag 9 mei 2012 @ 12:29
quote:
0s.gif Op woensdag 9 mei 2012 12:05 schreef draadstalig het volgende:
Al fok!ers die een EK poule 2012 in elkaar hebben geknutseld?
quote:
3s.gif Op dinsdag 8 mei 2012 21:15 schreef Antilurker het volgende:
Hallo,
ik ben nu bezig met een schema van het EK van 2012, vind ik wel leuk om eens zelf proberen te maken.
Maar nu zit ik met een probleem;
SPOILER
(Uitslagen heb ik zelf verzonnen, logisch.)
In het geselecteerde deel komt nu dus het land met de meeste punten te staan. Maar dan niet het land zelf, maar het grootste aantal punten. Nu wil ik daar dus het land zelf met de meeste punten krijgen, zonder het aantal punten dat ze hebben. Weet iemand een manier om automatisch de bepaalde winnaar te linken aan het land dat helemaal links staat, en die er gelijk neer te zetten?
bijv. van Poule 1 is Polen de winnaar met 5 punten, dus dat is G2, maar dan moet het dus automatisch veranderd worden in G2 > 6 cellen naar links.

bvd
O-)
draadstaligwoensdag 9 mei 2012 @ 12:47
quote:
0s.gif Op woensdag 9 mei 2012 12:29 schreef qu63 het volgende:

[..]

[..]

O-)
En af hebben O-) :Y
Deetchwoensdag 9 mei 2012 @ 13:04
Nu pas? Ik hergebruik al sinds EK2000 hetzelfde excel sheetje met hendig sjieke invoer en uitvoer sjablonen. En nee die deel ik niet, laat iedereen zijn eigen maar maken ;-)
draadstaligwoensdag 9 mei 2012 @ 14:06
quote:
3s.gif Op woensdag 9 mei 2012 13:04 schreef Deetch het volgende:
Nu pas? Ik hergebruik al sinds EK2000 hetzelfde excel sheetje met hendig sjieke invoer en uitvoer sjablonen. En nee die deel ik niet, laat iedereen zijn eigen maar maken ;-)
gier :)
qu63woensdag 9 mei 2012 @ 14:58
quote:
0s.gif Op woensdag 9 mei 2012 14:06 schreef draadstalig het volgende:

[..]

gier :)
Want jij dacht gewoon even makkelijk zijn werk te kunnen gebruiken zonder er zelfs iets voor te doen?
Deetchwoensdag 9 mei 2012 @ 15:04
quote:
0s.gif Op woensdag 9 mei 2012 14:58 schreef qu63 het volgende:

[..]

Want jij dacht gewoon even makkelijk zijn werk te kunnen gebruiken zonder er zelfs iets voor te doen?
heheh
draadstaligwoensdag 9 mei 2012 @ 15:14
quote:
0s.gif Op woensdag 9 mei 2012 14:58 schreef qu63 het volgende:

[..]

Want jij dacht gewoon even makkelijk zijn werk te kunnen gebruiken zonder er zelfs iets voor te doen?
Waarom opnieuw het wiel uitvinden :) Dus ja...(stille hoop)
Moronwoensdag 9 mei 2012 @ 15:26
Oke ik ben een ontzettende noob hierin, maar toch wil ik het graag voor elkaar krijgen.
Ik heb 967 rijen met gegevens, die onderverdeeld zijn in 5 kolommen.

Nu heb ik voor een steekproef 147 rijen nodig met die 5 kolommen. Hoe selecteer ik deze random?
Heb al zitten zoeken op internet of ik daar een formule voor kan geven, maar niets lijkt te werken.

Ik heb Excel 2007 met Nederlands taalpakket.
Janneke141woensdag 9 mei 2012 @ 15:27
Moet je de willekeurige selectie eenmalig maken, of vaker?
Moronwoensdag 9 mei 2012 @ 15:28
quote:
0s.gif Op woensdag 9 mei 2012 15:27 schreef Janneke141 het volgende:
Moet je de willekeurige selectie eenmalig maken, of vaker?
Ik wil gewoon 147 rijen met gegevens selecteren uit die 967 rijen. Zodat ik deze gemakkelijk kan gebruiken voor een representatieve steekproef
Janneke141woensdag 9 mei 2012 @ 15:30
Excel heeft de functie =ASELECT(), die willekeurige getallen tussen 0 en 1 genereert. Maak een zesde kolom achter je 967 rijen met in iedere cel de Aselect-functie en sorteer ze, je eerste 147 rijen zijn een willekeurige steekproef. Let op: iedere keer dat je wat verandert aan je werkblad verandert ook de uitkomst van de Aselect-functie!
Moronwoensdag 9 mei 2012 @ 15:33
quote:
0s.gif Op woensdag 9 mei 2012 15:30 schreef Janneke141 het volgende:
Excel heeft de functie =ASELECT(), die willekeurige getallen tussen 0 en 1 genereert. Maak een zesde kolom achter je 967 rijen met in iedere cel de Aselect-functie en sorteer ze, je eerste 147 rijen zijn een willekeurige steekproef. Let op: iedere keer dat je wat verandert aan je werkblad verandert ook de uitkomst van de Aselect-functie!
Dus ik moet in kolom F, want dan is de eerste lege achter mijn gegevens, in iedere cel naast de gegevens moet ik =Aselect plaatsen. Daarna sorteren en klaar?
Janneke141woensdag 9 mei 2012 @ 15:35
quote:
0s.gif Op woensdag 9 mei 2012 15:33 schreef Moron het volgende:

[..]

Dus ik moet in kolom F, want dan is de eerste lege achter mijn gegevens, in iedere cel naast de gegevens moet ik =Aselect plaatsen. Daarna sorteren en klaar?
Denk aan de haakjes achter =ASELECT()

Dat zou het moeten doen, ja. Wel sorteren met kolom F als sorteersleutel hè!
Moronwoensdag 9 mei 2012 @ 15:36
quote:
0s.gif Op woensdag 9 mei 2012 15:35 schreef Janneke141 het volgende:

[..]

Denk aan de haakjes achter =ASELECT()

Dat zou het moeten doen, ja. Wel sorteren met kolom F als sorteersleutel hè!
Oke, ga het proberen, dank je wel :)

Edit: Gelukt

[ Bericht 1% gewijzigd door Moron op 09-05-2012 15:46:28 ]
Deetchwoensdag 9 mei 2012 @ 17:07
quote:
0s.gif Op woensdag 9 mei 2012 15:36 schreef Moron het volgende:

[..]

Oke, ga het proberen, dank je wel :)

Edit: Gelukt
goed bezig ^O^
Antilurkerwoensdag 9 mei 2012 @ 18:10
Hey ik heb weer een vraag over m'n EK schema :)
Deetch, die formule die je gaf werkte perfect, bedankt!
Alleen nu was er het probleem met landen met dezelfde punten...
Ik wou dat dus op gaan lossen door Excel naar het doelsaldo te laten kijken...
Maar dan wel dat hij dus EERST naar de punten kijkt, en als die gelijk zijn, dan pas kijkt hij naar het aantal doelpunten dat het land heeft en maakt hij daaruit dus op wie de nummer 1 en de nummer 2 van die poule zijn geworden.
Misschien handig;
SPOILER
79990c8f0811b692558b27cf04a69a88.png?1336579718
Ik denk dat ik nog wel een paar keer langskom met wat vragen :P
Outlinedwoensdag 9 mei 2012 @ 23:33
Excel 2007

5 rijen en 2 kolommen
gevuld met dus 10 waarden

en nu wil ik de ene kolom tegen de andere kolom uitzetten in een grafiek

en het lukt NIET

of niet op schaal, of de x-as geeft hij een eigen nummering (1 2 3 4 5 :N )

[ Bericht 2% gewijzigd door Outlined op 09-05-2012 23:38:53 ]
snabbiwoensdag 9 mei 2012 @ 23:49
quote:
5s.gif Op woensdag 9 mei 2012 23:33 schreef Outlined het volgende:
Excel 2007

5 rijen en 2 kolommen
gevuld met dus 10 waarden

en nu wil ik de ene kolom tegen de andere kolom uitzetten in een grafiek

en het lukt NIET

of niet op schaal, of de x-as geeft hij een eigen nummering (1 2 3 4 5 :N )
Gebruik een ander grafiektype, spreiding in plaats van lijn..
snabbiwoensdag 9 mei 2012 @ 23:56
quote:
14s.gif Op woensdag 9 mei 2012 18:10 schreef Antilurker het volgende:
Hey ik heb weer een vraag over m'n EK schema :)
Deetch, die formule die je gaf werkte perfect, bedankt!
Alleen nu was er het probleem met landen met dezelfde punten...
Ik wou dat dus op gaan lossen door Excel naar het doelsaldo te laten kijken...
Maar dan wel dat hij dus EERST naar de punten kijkt, en als die gelijk zijn, dan pas kijkt hij naar het aantal doelpunten dat het land heeft en maakt hij daaruit dus op wie de nummer 1 en de nummer 2 van die poule zijn geworden.
Misschien handig;
SPOILER
Ik denk dat ik nog wel een paar keer langskom met wat vragen :P
De eenvoudige manier om zo'n probleem op te lossen is door gebruik te maken van een tussenwaarde, die je niet toont. Zo kan je bijvoorbeeld je eigen getal bouwen op basis van een combinatie van punten en doelpunten. Bijvoorbeeld in kolom I zet je de formule:

=G2&als(k2<10;0&k2;k2)

wat je doet is het samenvoegen van je puntentotaal en de doelpunten. Doordat je je puntentotaal vooraan zet heeft dit de grootste invloed op het bepalen van de grootste waarde en daarna pas de doelpunten. De formule met de als heb ik er in gezet zodat je een voorloop nul hebt wanneer je aantal doelpunten onder de 10 hebt.

In je voorbeeld krijg je voor Rusland 409 en voor Griekenland 408. Het getal van Rusland is groter en komt dus boven Griekenland uit. Dit terwijl Kroatie met 5 punten nog hoger uitkomt, ongeacht het doelsaldo.

Dit is de quick & dirty methode. Er zijn veel mooiere en schonere opties.

*edit:
De methode werkt zo natuurlijk niet voor een negatief doelsaldo. Daarvoor werkt deze constructie dan weer wel:
=G2*100+K2
Het concept is hetzelfde en bij een negatief doelsaldo zal je bij 3 punten en -1 springen naar 299. Het is niet zo netjes maar de kans dat het fout gaat is zeer gering.
Nogmaals het is quick & dirty.

[ Bericht 5% gewijzigd door snabbi op 10-05-2012 00:07:42 ]
Outlineddonderdag 10 mei 2012 @ 02:07
quote:
0s.gif Op woensdag 9 mei 2012 23:49 schreef snabbi het volgende:

[..]

Gebruik een ander grafiektype, spreiding in plaats van lijn..
gerrit098vrijdag 11 mei 2012 @ 17:20
quote:
3s.gif Op dinsdag 8 mei 2012 12:20 schreef Deetch het volgende:

[..]

of nog beter in cel A1 alleen de naam van persoon1 (of 2 etc) en dan onderstaande formule (vrijwel hetzelfde hoor)

=SOM(INDIRECT("'["&A1&" 2012.xlsx]"&A2&"'!"&A3&":"&A4))

of als alleen de naam variabel is (en in A1 staat):

=SOM(INDIRECT("'["&A1&" 2012.xlsx]Blad1'!$C$129:$C$135"))
Dankje dit werkt nu goed.

Ik heb alleen het probleem dat de persoon* 2012.xlsx geopend moet zijn. is er ook een mogelijkheid
op dit te doen zonder al de excel bestanden te openen.
Oneironautzaterdag 12 mei 2012 @ 15:20
graph.jpg
Ik vind die x-as vervelend. Heb liever dat de afstand gelijk blijft, zodat je ook het verschil in breedte van de verschillende verdelingen ziet. Hoe doe ik dit? Bij As Opmaken lukt het niet (misschien omdat ik nu in excel starter zit...) maar goed. Ik kan niet alle x waarden in een kolom gaan zetten en dan evt. 0 erachter want dat zijn nogal wat rijen... Iemand enig idee?
Ik heb dus voor verschillenden waarde C een hoeveelheid qua voorkomen onder D en F en die wil ik beiden in een grafiek geplot, maar dus niet zoals in het plaatje.
qu63zaterdag 12 mei 2012 @ 16:43
quote:
0s.gif Op zaterdag 12 mei 2012 15:20 schreef Oneironaut het volgende:
[ afbeelding ]
Ik vind die x-as vervelend. Heb liever dat de afstand gelijk blijft, zodat je ook het verschil in breedte van de verschillende verdelingen ziet. Hoe doe ik dit? Bij As Opmaken lukt het niet (misschien omdat ik nu in excel starter zit...) maar goed. Ik kan niet alle x waarden in een kolom gaan zetten en dan evt. 0 erachter want dat zijn nogal wat rijen... Iemand enig idee?
Ik heb dus voor verschillenden waarde C een hoeveelheid qua voorkomen onder D en F en die wil ik beiden in een grafiek geplot, maar dus niet zoals in het plaatje.
Je afbeelding doet hier helaas niet..

-edit- Ah, als je op de link klikt doet ie t wel :)

Het 'probleem' is denk dat Excel je logica voor de horizontale as niet snapt. Je zou wel kunnen proberen om (in Excel 2007 NL) bij 'gegevensbron selecteren' 'verborgen en lege cellen' aan te klikken en te kiezen voor Lege cellen weergeven als 'openingen' :)
Oneironautzaterdag 12 mei 2012 @ 18:52
Bedankt. Werkt alleen niet... Ehm.
Excel kom op :(
Bartmaandag 14 mei 2012 @ 09:00
Ik heb al een beetje gegoogeld, maar kan daar alleen maar vinden dat het niet kan. Maar wie weet weet iemand toch een omweg hier: ik wil in Excel 2010 met vooorwaardelijke opmaak een dikke rand of een dubbele rand instellen. Maar ik kan enkel dunne randen kiezen. De lijst met opties is veel korter dan met normale opmaak. Iemand hier een methode om toch een dikke rand te kiezen in voorwaardelijke opmaak?
DaFanmaandag 14 mei 2012 @ 09:05
Het kan niet want, 'Excel does not accept conditional format that might change the cells width or height'

Je kan natuurlijk de cel standaard dikke randen geven en dan opmaak zetten voor de waarden waar je geen dikke randen wilt, andersom redeneren dus.
Bartmaandag 14 mei 2012 @ 09:21
quote:
1s.gif Op maandag 14 mei 2012 09:05 schreef DaFan het volgende:
Het kan niet want, 'Excel does not accept conditional format that might change the cells width or height'

Je kan natuurlijk de cel standaard dikke randen geven en dan opmaak zetten voor de waarden waar je geen dikke randen wilt, andersom redeneren dus.
Hmm, jammer. Dan idd maar standaard dunne lijn en voorwaardelijk normale lijn... Tnx!
Deetchmaandag 14 mei 2012 @ 14:38
quote:
0s.gif Op vrijdag 11 mei 2012 17:20 schreef gerrit098 het volgende:

[..]

Dankje dit werkt nu goed.

Ik heb alleen het probleem dat de persoon* 2012.xlsx geopend moet zijn. is er ook een mogelijkheid
op dit te doen zonder al de excel bestanden te openen.
Kan alleen via een macro die stiekem het niet geopende bestand opent zonder dat je het ziet en vervolgens de dat eruit haalt. Je krijgt dan echter de harde waarde en niet een verwijzing.

Wat ik in dit soort gevallen doe is een macro koppelen aan het openen van de workbook die alle data verzameld. Zodat als je deze spreadsheet opent hij ook alle spreadsheets opent die nodig zijn voor de verwijzingen. Zie: http://www.ozgrid.com/VBA/auto-run-macros.htm
Prof_Hoaxdinsdag 15 mei 2012 @ 11:23
quote:
3s.gif Op maandag 7 mei 2012 13:04 schreef Deetch het volgende:

[..]

Ach ja als je weet waar je moet google-en kom je een heel eind.
Hmm, ik zit nu al een tijdje te googlen.. en heb jouw tips gelezen.
Heb me suf gelezen hier: http://msdn.microsoft.com(...)lfromExcel2011_Range

maar ik kom er niet uit, vandaar nogmaals mijn vraag.
Ik wil in excell een stukje tekst uit een cel hebben, dat als je daar op klikt, er een mailtje in outlook opent en die al half ingevuld is, dus met ontvangers (eventueel CC ) en een vooringevulde tekst (dus geen workbook/selectie als bijlage of wat dan ook) maar gewoon een e-mail:

1
2
3
4
5
6
7
8
9
10
ontvanger : blabla@blabla.nl
cc: blabla2@blabla.nl

Beste,

Graag zou ik willen ontvangen:
*dit
*dat
*zus
*zo

Niet iets automatisch versturen oid gewoon openen van een "draft" zeg maar.
qu63dinsdag 15 mei 2012 @ 11:26
quote:
99s.gif Op dinsdag 15 mei 2012 11:23 schreef Prof_Hoax het volgende:
Niet iets automatisch versturen oid gewoon openen van een "draft" zeg maar.
Dan moet je de laatste regels van Deetch' macro aanpassen ;)
Prof_Hoaxdinsdag 15 mei 2012 @ 11:28
quote:
0s.gif Op dinsdag 15 mei 2012 11:26 schreef qu63 het volgende:

[..]

Dan moet je de laatste regels van Deetch' macro aanpassen ;)
_O- :|W
Prof_Hoaxdinsdag 15 mei 2012 @ 11:41
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Sub Mailer()

Sheets("BB Email Data").Select
pathname = [b11].Value 'defines attachmentdname
dname = [b14].Value 'defines date for subject
Dim objol As New outlook.Application
Dim objmail As MailItem
Set objol = New outlook.Application
Set objmail = objol.createitem(olmailitem)
With objmail
.To = "fds@sa.com" 'enter in here the email address
.cc = "adres@adres.com" 'enter in here the email address
.Subject = "Daily test email for  " & dname
.Body = "Hoi doei test" & _
vbCrLf & "If you have any queries can you please let me know" & vbCrLf

.NoAging = True
.Attachments.Add pathname 'adds attachment to email
.display

End With

Set objmail = Nothing
Set objol = Nothing
SendKeys "%{s}", False 'send the email without prompts

End Sub

Goed, ik kan dus regels toevoegen en zo de opmaak maken zoals ik wil.
Ik kan de subject van de mail aanpassen.
Ik heb "sendkeys" false gemaakt zodat hij niet direct verstuurd.

Maar nu... Als ik hem laat runnen krijg ik :Compile error: user defined type not defined.

En dan selecteerd hij :
1Dim [b]objol As New outlook.Application[/b]

En wordt " Sub Mailer () geel met pijltje ervoor. Wat wil dit zeggen?
UbiDubiumIbiLibertaswoensdag 16 mei 2012 @ 03:44
Is het mogelijk om bij diagrammen zoals de onderstaande het geheel 45 graden naar rechts te draaien (dus zodat de lijn tussen de twee grote vlakken precies in het midden staat)?

2jdopxd.png
Deetchwoensdag 16 mei 2012 @ 08:31
quote:
99s.gif Op dinsdag 15 mei 2012 11:41 schreef Prof_Hoax het volgende:

[ code verwijderd ]

Goed, ik kan dus regels toevoegen en zo de opmaak maken zoals ik wil.
Ik kan de subject van de mail aanpassen.
Ik heb "sendkeys" false gemaakt zodat hij niet direct verstuurd.

Maar nu... Als ik hem laat runnen krijg ik :Compile error: user defined type not defined.

En dan selecteerd hij :
[ code verwijderd ]

En wordt " Sub Mailer () geel met pijltje ervoor. Wat wil dit zeggen?
verwijder de [ b] en [ /b] eens uit je code?

[ Bericht 0% gewijzigd door Deetch op 16-05-2012 08:39:25 ]
Deetchwoensdag 16 mei 2012 @ 08:34
quote:
0s.gif Op woensdag 16 mei 2012 03:44 schreef UbiDubiumIbiLibertas het volgende:
Is het mogelijk om bij diagrammen zoals de onderstaande het geheel 45 graden naar rechts te draaien (dus zodat de lijn tussen de twee grote vlakken precies in het midden staat)?

[ afbeelding ]
In excel 2010 (en ook 2007 denk ik) selecteer je de Pie-chart, rechts klikken, format data series en daar kun je een rotatie aangeven bij series options.

[ Bericht 0% gewijzigd door Deetch op 16-05-2012 08:39:40 ]
Prof_Hoaxwoensdag 16 mei 2012 @ 08:40
quote:
3s.gif Op woensdag 16 mei 2012 08:31 schreef Deetch het volgende:

[..]

verwijder de [ b] en [ /b] eens uit je code?
Oh, die heb ik er zelf in gezet om te laten zien welk deel er geselecteerd werd. Maar dat werkt niet uiteraard als ik hem hier in code tags zet -O-

Het is zoals in het bovenste code blok.
Deetchwoensdag 16 mei 2012 @ 09:10
Volgens mij gaat het met de DIM regel fout omdat dat geen zegt dat objol een outlook applicatie is maar je moet zeggen dat het een object is en dan later zeggen wat voor object. Zie ook het voorbeeld uit de VBA help van excel 2010. Of de site van ron de bruin: http://www.rondebruin.nl/sendmail.htm

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Sub Sample()
   'Setting up the Excel variables.
   Dim olApp As Object
   Dim olMailItm As Object
   Dim iCounter As Integer
   Dim Dest As Variant
   Dim SDest As String
   
   'Create the Outlook application and the empty email.
   Set olApp = CreateObject("Outlook.Application")
   Set olMailItm = olApp.CreateItem(0)
   
   'Using the email, add multiple recipients, using a list of addresses in column A.
   With olMailItm
       SDest = ""
       For iCounter = 1 To WorksheetFunction.CountA(Columns(1))
           If SDest = "" Then
               SDest = Cells(iCounter, 1).Value
           Else
               SDest = SDest & ";" & Cells(iCounter, 1).Value
           End If
       Next iCounter
       
    'Do additional formatting on the BCC and Subject lines, add the body text from the spreadsheet, and send.
       .BCC = SDest
       .Subject = "FYI"
       .Body = ActiveSheet.TextBoxes(1).Text
       .Send
   End With
   
   'Clean up the Outlook application.
   Set olMailItm = Nothing
   Set olApp = Nothing
End Sub

bovenstaande code werkt in ieder geval.
UbiDubiumIbiLibertaswoensdag 16 mei 2012 @ 13:03
quote:
3s.gif Op woensdag 16 mei 2012 08:34 schreef Deetch het volgende:

[..]

In excel 2010 (en ook 2007 denk ik) selecteer je de Pie-chart, rechts klikken, format data series en daar kun je een rotatie aangeven bij series options.
Hartelijk dank!
jakeesdonderdag 17 mei 2012 @ 13:46
hallo ik op basis van een formule bepalen uit welke cel ik een waarde wil ophalen. Even versimpeld wil op basis van een rekensom in b1 bepalen in de cel b2 de waarde hebben uit a1 of a2 of a3 etc. moet halen. Iets als:
=a(b1) waarbij b1 dan de waarde 1 tm 10000 kan bevatten. Ik wil niet gebruik maken van verticaal zoeken. Voor dit voorbeeld zou het wel werken maar ik wil dit gaan gebruiken voor een rangbepaling die ik meerdere keren binnen een kolom wil toepassen. Ik hoop dat het een beetje duidelijk is.
qu63donderdag 17 mei 2012 @ 14:06
quote:
0s.gif Op donderdag 17 mei 2012 13:46 schreef jakees het volgende:
hallo ik op basis van een formule bepalen uit welke cel ik een waarde wil ophalen. Even versimpeld wil op basis van een rekensom in b1 bepalen in de cel b2 de waarde hebben uit a1 of a2 of a3 etc. moet halen. Iets als:
=a(b1) waarbij b1 dan de waarde 1 tm 10000 kan bevatten. Ik wil niet gebruik maken van verticaal zoeken. Voor dit voorbeeld zou het wel werken maar ik wil dit gaan gebruiken voor een rangbepaling die ik meerdere keren binnen een kolom wil toepassen. Ik hoop dat het een beetje duidelijk is.
Heb je de ALS()-functie al geprobeerd?

-edit- Faal ;(

[ Bericht 6% gewijzigd door qu63 op 17-05-2012 14:38:20 ]
snabbidonderdag 17 mei 2012 @ 14:11
quote:
0s.gif Op donderdag 17 mei 2012 13:46 schreef jakees het volgende:
hallo ik op basis van een formule bepalen uit welke cel ik een waarde wil ophalen. Even versimpeld wil op basis van een rekensom in b1 bepalen in de cel b2 de waarde hebben uit a1 of a2 of a3 etc. moet halen. Iets als:
=a(b1) waarbij b1 dan de waarde 1 tm 10000 kan bevatten. Ik wil niet gebruik maken van verticaal zoeken. Voor dit voorbeeld zou het wel werken maar ik wil dit gaan gebruiken voor een rangbepaling die ik meerdere keren binnen een kolom wil toepassen. Ik hoop dat het een beetje duidelijk is.
Het antwoord op je vraag is =INDIRECT("a"&b1) waarbij je dus de kolom hebt staan op A en de waarde in B1 geeft het regelnummer.
jakeesdonderdag 17 mei 2012 @ 14:27
quote:
0s.gif Op donderdag 17 mei 2012 14:11 schreef snabbi het volgende:

[..]

Het antwoord op je vraag is =INDIRECT("a"&b1) waarbij je dus de kolom hebt staan op A en de waarde in B1 geeft het regelnummer.
thx is bijna wat ik zoek. Even wat verduidelijking. Ik heb 40 rijen. in kolom A staat de naam van een persoon en in kolom B de het jaartal en kolom 3 de score. Per jaar staan er 10 rijen. Wat ik wil is dat ik een rang functie maakt die als het ware dynamisch werkt. Dus bij de eerste 10 rijen staat er ==RANG(C2;C$2:C$11;0) in de 2e 10 rijen staat =RANG(C12;C$12:C$21;0). Ik wil proberen dit dynamisch te maken. Met indirect lukt dat denk ik niet. Dan haal je echt de waarde op terwijl ik de range dynamisch wil houden.
DaFandonderdag 17 mei 2012 @ 14:37
ADRES(INDIRECT(
jakeesdonderdag 17 mei 2012 @ 14:46
quote:
7s.gif Op donderdag 17 mei 2012 14:37 schreef DaFan het volgende:
ADRES(INDIRECT(
thx dat is hem!!!!!
DaFandonderdag 17 mei 2012 @ 14:58
quote:
0s.gif Op donderdag 17 mei 2012 14:46 schreef jakees het volgende:

[..]

thx dat is hem!!!!!
Mooizo ;)
jakeesdonderdag 17 mei 2012 @ 15:49
quote:
7s.gif Op donderdag 17 mei 2012 14:58 schreef DaFan het volgende:

[..]

Mooizo ;)
Oef iets te vroeg gejuicht. Zie https://docs.google.com/s(...)lodXhmb0E&output=xls . Het lukt me wel om met de adres functie de juiste waarde op te halen. Maar ik krijg hem niet in de rang functie. Zien jullie wat ik verkeerd doe?
DaFandonderdag 17 mei 2012 @ 15:54
quote:
0s.gif Op donderdag 17 mei 2012 15:49 schreef jakees het volgende:

[..]

Oef iets te vroeg gejuicht. Zie https://docs.google.com/s(...)lodXhmb0E&output=xls . Het lukt me wel om met de adres functie de juiste waarde op te halen. Maar ik krijg hem niet in de rang functie. Zien jullie wat ik verkeerd doe?
Dit gaat niet goed met de dubbele punt:
ADRES(RIJ(I3)-A3;3):ADRES(RIJ(I3)-A3+10;3)

Ik zie niet helemaal wat je doet maar je moet het volgende doen:
INDIRECT(ADRES1&":"&ADRES2)

Dan maak je een string met ADRES, dan de dubbele punt, dan het laatste ADRES.
Dus bv $C$3:$C$4. Als daar dan INDIRECT omheen staat kan hij het lezen als range.

Succes.
jakeesdonderdag 17 mei 2012 @ 17:36
quote:
7s.gif Op donderdag 17 mei 2012 15:54 schreef DaFan het volgende:

[..]

Dit gaat niet goed met de dubbele punt:
ADRES(RIJ(I3)-A3;3):ADRES(RIJ(I3)-A3+10;3)

Ik zie niet helemaal wat je doet maar je moet het volgende doen:
INDIRECT(ADRES1&":"&ADRES2)

Dan maak je een string met ADRES, dan de dubbele punt, dan het laatste ADRES.
Dus bv $C$3:$C$4. Als daar dan INDIRECT omheen staat kan hij het lezen als range.

Succes.
THX! nu eindelijk gelukt. De formule is nu:
=RANG(D2;INDIRECT(ADRES(RIJ(A2)-A2;4)&":"&ADRES(RIJ(A2)-A2+10;4))) is ook niet eenvoudig moet ik zeggen maar ja wel weer 3 uur verspeeld die ik aan mijn studie had moeten besteden. grrr
snabbidonderdag 17 mei 2012 @ 18:04
Een hele andere oplossing voor je, de formule die je hier nodig hebt is
=SOM((C2=$C$2:$C$31)*(D2<=$D$2:$D$31))

Het betreft een array formule. Je moet dus je ctrl en shift toets ingedrukt houden terwijl je op enter drukt.
http://www.mijnbestand.nl/Bestand-CCOH38ISWCOP.xlsx

Hoe het werkt:
Wat excel hier doet is het volgende. Er wordt binnen de cel waar je dit plaatst een nieuwe matrix aangemaakt. Deze is 1 kolom met 30 waarden (door je C2:C30).

Elke regel in deze cel krijgt de waarde 1 of 0. Deze waarde wordt bepaald aan de hand van de formule: a*b
hierbij is a gelijk aan c2=$c$2:$c$31
hierbij is b gelijk aan d2<=$D$2:$D$31

wanneer de waarde in c2 (bijvoorbeeld 2008) gelijk is aan de waarde in de reeks C2:C31 wordt op de corresponderende regel in je matrix een 1 geplaatst en wanneer het niet waar is een 0. Door de formule a*b krijg je 0*1 of 0*0 wanneer je een ander jaartal hebt dan degene die op die ene regel staat. Doordat je met 0 vermenigvuldigt, is de uitkomst ook nul.

Het tweede deel kijkt simpelweg of er getallen kleiner zijn dat het getal waar je nu naar kijkt. Als dat zo is, is dit dus niet het grootste getal en moet je er in je ranking er 1 optellen. Dit gebeurt ook met de 1*1 uitkomst. De som van je 30 getallen in je matrix, zorgt dat je de rank van die betreffende regel hebt.

[ Bericht 31% gewijzigd door snabbi op 17-05-2012 18:16:58 ]
jakeesdonderdag 17 mei 2012 @ 18:36
quote:
0s.gif Op donderdag 17 mei 2012 18:04 schreef snabbi het volgende:
Een hele andere oplossing voor je, de formule die je hier nodig hebt is
=SOM((C2=$C$2:$C$31)*(D2<=$D$2:$D$31))

Het betreft een array formule. Je moet dus je ctrl en shift toets ingedrukt houden terwijl je op enter drukt.
http://www.mijnbestand.nl/Bestand-CCOH38ISWCOP.xlsx

Hoe het werkt:
Wat excel hier doet is het volgende. Er wordt binnen de cel waar je dit plaatst een nieuwe matrix aangemaakt. Deze is 1 kolom met 30 waarden (door je C2:C30).

Elke regel in deze cel krijgt de waarde 1 of 0. Deze waarde wordt bepaald aan de hand van de formule: a*b
hierbij is a gelijk aan c2=$c$2:$c$31
hierbij is b gelijk aan d2<=$D$2:$D$31

wanneer de waarde in c2 (bijvoorbeeld 2008) gelijk is aan de waarde in de reeks C2:C31 wordt op de corresponderende regel in je matrix een 1 geplaatst en wanneer het niet waar is een 0. Door de formule a*b krijg je 0*1 of 0*0 wanneer je een ander jaartal hebt dan degene die op die ene regel staat. Doordat je met 0 vermenigvuldigt, is de uitkomst ook nul.

Het tweede deel kijkt simpelweg of er getallen kleiner zijn dat het getal waar je nu naar kijkt. Als dat zo is, is dit dus niet het grootste getal en moet je er in je ranking er 1 optellen. Dit gebeurt ook met de 1*1 uitkomst. De som van je 30 getallen in je matrix, zorgt dat je de rank van die betreffende regel hebt.

RESPECT. Daar had ik nooit opgekomen. Ik snap het een beetje maar ziet er goed uit. Wordt dit vaak gebruikt om de rang te bepalen?
snabbidonderdag 17 mei 2012 @ 18:44
quote:
0s.gif Op donderdag 17 mei 2012 18:36 schreef jakees het volgende:

[..]

RESPECT. Daar had ik nooit opgekomen. Ik snap het een beetje maar ziet er goed uit. Wordt dit vaak gebruikt om de rang te bepalen?
Dit wordt vooral gebruikt wanneer je meerdere criteria hebt op basis waarvan je de rangschikking moet bepalen. Je kan dit namelijk met zoveel kolommen uitbreiden als je zelf wilt. Het is dus ook een goede tip voor alle voetbalpoules die nu worden opgezet :)

[ Bericht 0% gewijzigd door snabbi op 18-05-2012 11:27:37 ]
jakeesdonderdag 17 mei 2012 @ 19:15
quote:
0s.gif Op donderdag 17 mei 2012 18:44 schreef snabbi het volgende:

[..]

Dit wordt vooral gebruikt wanneer je meerdere criteria hebt op basis waarvan je de rangschikking moet betalen. Je kan dit namelijk met zoveel kolommen uitbreiden als je zelf wilt. Het is dus ook een goede tip voor alle voetbalpoules die nu worden opgezet :)
Ok top. Ik snap hem nu en is iets eenvoudiger qua opzet dan die ander. Thx snabbi en DaFan
Prof_Hoaxvrijdag 18 mei 2012 @ 07:25
quote:
3s.gif Op woensdag 16 mei 2012 09:10 schreef Deetch het volgende:
Volgens mij gaat het met de DIM regel fout omdat dat geen zegt dat objol een outlook applicatie is maar je moet zeggen dat het een object is en dan later zeggen wat voor object. Zie ook het voorbeeld uit de VBA help van excel 2010. Of de site van ron de bruin: http://www.rondebruin.nl/sendmail.htm
[ code verwijderd ]


bovenstaande code werkt in ieder geval.
Mijn god, wat faal ik hard. Zelfs 1 op 1 kopie krijg ik niet werkend.

Ik ga jullie tijd niet verder verdoen, en me eerst zelf eens verder verdiepen in heel dit gebeuren :@ Toch bedankt voor enthausiaste, snelle en goede hulp O+
Je ziet me weer terug als ik wat meer kennis heb opgedaan :9
snabbivrijdag 18 mei 2012 @ 10:45
quote:
99s.gif Op vrijdag 18 mei 2012 07:25 schreef Prof_Hoax het volgende:

[..]

Mijn god, wat faal ik hard. Zelfs 1 op 1 kopie krijg ik niet werkend.

Ik ga jullie tijd niet verder verdoen, en me eerst zelf eens verder verdiepen in heel dit gebeuren :@ Toch bedankt voor enthausiaste, snelle en goede hulp O+
Je ziet me weer terug als ik wat meer kennis heb opgedaan :9
Als ik je vraag goed heb begrepen, wil je gewoon een draft e-mail klaarzetten. Dit hoeft niet direct verstuurt te worden. In dat geval heb je in mijn ogen helemaal geen Macro nodig en kan je volstaan met een hyperlink. De mailto functie in je hyperlink zorgt ervoor dat je standaard e-mail programma wordt opgestart en je kan zelf de concept tekst helemaal klaar zetten.

Voor een voorbeeld: http://www.mijnbestand.nl/Bestand-LAUV6NWBKJHZ.xlsx
Prof_Hoaxvrijdag 18 mei 2012 @ 11:20
quote:
0s.gif Op vrijdag 18 mei 2012 10:45 schreef snabbi het volgende:

[..]

Als ik je vraag goed heb begrepen, wil je gewoon een draft e-mail klaarzetten. Dit hoeft niet direct verstuurt te worden. In dat geval heb je in mijn ogen helemaal geen Macro nodig en kan je volstaan met een hyperlink. De mailto functie in je hyperlink zorgt ervoor dat je standaard e-mail programma wordt opgestart en je kan zelf de concept tekst helemaal klaar zetten.

Voor een voorbeeld: http://www.mijnbestand.nl/Bestand-LAUV6NWBKJHZ.xlsx
^O^ Na 't weekeind eens naar kijken. Dankjewel ^O^
Roberto258zondag 20 mei 2012 @ 17:02
Dacht dat ik wel aardig met excel overweg kon, maar kom er nu even niet uit.

Ik was een simpel EK poule in elkaar aan het zetten en nu de volgende sitautie:

E36 = Rusland
F36 = aantal doelpunten dat Rusland heeft gemaakt
H36 = aantal doelpunten dat Denemarken heeft gemaakt
I36 = Denemarken
K36 = Rusland of Denemarken (diegene die na penalty's wint, bij gelijke stand na 120 minuten, zie cel F36 en H36).

Nu wil ik dat de winnaar van deze wedstrijd automatisch wordt ingevuld in de halve finale, maar als de uitslag nog niet (volledig) is ingevuld, dan moet er nog niets komen te staan. Niet volledig = F36, H36 of eventueel K36.

Ik kom er niet uit, iemand die mij kan helpen?

Alvast bedankt!!

edit: het is al gelukt, ik zat met de > en < te kloten :')

dit was hem dus: =ALS(F36="";"";ALS(H36="";"";ALS(F36>H36;E36;ALS(F36<H36;I36;ALS(F36=H36;ALS(K36="";"";K36))))))

[ Bericht 17% gewijzigd door Roberto258 op 20-05-2012 17:20:15 ]
mwvrszondag 20 mei 2012 @ 17:50
Hallo ik ben nieuw hier. Ik heb een berg Excelbestanden (~1000) waarin ik de tekstterugloop in
alle cellen van kolom B ongedaan wil maken. Is er een makkelijke manier om dit in bulk/batch te doen? Ik doe dit liever niet handmatig... :). Het lukt me om een macro op te nemen om het binnen één bestand te doen, maar ik weet niet hoe ik dit automatisch over meerdere bestanden kan uitvoeren.

Iemand een goed idee? Alvast bedankt!
snabbizondag 20 mei 2012 @ 18:33
Ik heb een macro voor je gemaakt die ieder bestand in een bepaalde folder voor je opent. Ik heb hem niet monkey-proof gemaakt, dus hij checkt verder niet of het wel een Excel bestand is en dergelijke.

Open een Excel bestand en plaats de code er in. Dit kan je doen via ALT F11 om de Visual Basic editor te openen en vervolgens een module toe te voegen (rechts muistoets -> Invoegen -> Module).

Voer de opdracht uit via ALT F8 om en je macro te starten. In het voorbeeld heb ik de map c:\excels als voorbeeld genomen en natuurlijk alleen de B kolom.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Sub Uitzetten_Terugloop()
'standaard meldingen uit zetten zodat hij er sneller doorheen loopt
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.EnableEvents = False

Dim kolom, bestand, folder As String
'Hier zetten we de variabelen zodat de juiste map en kolom wordt bekeken
folder = "c:\excels\"
kolom = "B:B"

'Hier wordt de code uitgevoerd. Hij gaat elk bestand in je folder af
'Ieder bestand wordt opgeopend en vervolgens van de kolom de WrapText op false gezet
'Tot slot opgeslagen en gesloten.
bestand = Dir(folder)
While bestand <> ""
    Workbooks.Open Filename:=folder & bestand
    Columns(kolom).Select
    With Selection
        .WrapText = False
    End With
    ActiveWorkbook.Save
    ActiveWorkbook.Close
    bestand = Dir
Wend

'Hier zetten we alle meldingen weer aan en zijn we klaar.
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Application.EnableEvents = True

End Sub

EDIT: *woordje folder toegevoegd in regel 17

[ Bericht 1% gewijzigd door snabbi op 20-05-2012 22:36:50 ]
mwvrszondag 20 mei 2012 @ 22:05
Fantastisch snabbi _O_ Dit is meer hulp dan ik op had gehoopt!

Ik krijg echter de volgende melding bij het uitvoeren van de macro:

quote:
Run time error '1004'
'bestand1.xlsx' could not be founds. Check the spelling of the file name, and verify that the file location is correct.

If you are trying to open a file from your list of most recent used files, make sure that the file has not be renamed, moved or deleted.
Als de locatie niet correct is, hoe kan hij dan de naam van het bestand weten? Zie ik iets over het hoofd of gaat er iets anders mis? :?
snabbizondag 20 mei 2012 @ 22:33
Wijzig de code in regel 17 naar (zoals ik ook hierboven al heb gedaan):
Workbooks.Open Filename:=folder & bestand

Dan ben je immers volledig in de naamgeving. Bij mijn testje werkte dit wel omdat hij dan gebruik maakt van je recent geopende bestanden. Even vergeten :) Let er wel op dat je folder dus ook eindigt op een \ anders loopt dat weer verkeerd

Wat je ook kan doen met je macro is met je cursor in de code gaan staan en via F8 vervolgens regel voor regel doorlopen. Uiteraard kan je via het play knopje doorgaan wanneer je voldoende gezien hebt.

Overigens ben ik er ook 'blind' vanuit gegaan dat je alleen in de actieve sheet kolom B moet wijzigen. Indien je over meerdere sheets de handeling wilt verrichten moet je dat column(kolom) deel wijzigen naar iets in de trant van:
1
2
3
4
5
6
7
8
Dim i As Integer
For i = 1 To Sheets.Count
 Sheets(i).Activate
 columns(kolom).select
 With Selection
   .WrapText = False
 End With
Next i


[ Bericht 19% gewijzigd door snabbi op 20-05-2012 22:59:03 ]
mwvrszondag 20 mei 2012 @ 23:18
De bewerking is inderdaad alleen in het actieve sheet nodig dus je laatste aanpassing is niet nodig voor mij :)

Het werkt nu in ieder geval perfect! Heel erg bedankt!! ^O^ ^O^
Prof_Hoaxmaandag 21 mei 2012 @ 10:56
quote:
0s.gif Op vrijdag 18 mei 2012 10:45 schreef snabbi het volgende:

[..]

Als ik je vraag goed heb begrepen, wil je gewoon een draft e-mail klaarzetten. Dit hoeft niet direct verstuurt te worden. In dat geval heb je in mijn ogen helemaal geen Macro nodig en kan je volstaan met een hyperlink. De mailto functie in je hyperlink zorgt ervoor dat je standaard e-mail programma wordt opgestart en je kan zelf de concept tekst helemaal klaar zetten.

Voor een voorbeeld: http://www.mijnbestand.nl/Bestand-LAUV6NWBKJHZ.xlsx
Ziet er goed uit. En inderdaad je had de vraag goed begrepen, maar het is iets uitgebreider:

SPOILER
Het zijn een aantal (denk 9 sheets) die allemaal een aparte mailto hebben. Op elke sheet moeten de gebruikers kunnen mailen naar een ander adres.
Ik denk dat ik een extra sheet verborgen maak met alle referenties (het gele in je testsheet) en dan een hyperlink vanaf de andere sheets daarna laten verwijzen.
Echter, kan het mailto commando omgaan met PDL's van excel?

Als er iemand een valkuil ziet, please enlighten me :+
edit: zie post hieronder.

[ Bericht 5% gewijzigd door Prof_Hoax op 21-05-2012 11:37:46 ]
Prof_Hoaxmaandag 21 mei 2012 @ 11:37
Disregard above :D


Heb iets geprobeerd. De cel waar de ontvanger in gedefineerd wordt heb ik aangegeven als zijnde een email adres. Dit omdat de PDL die ik wilde gebruiken begint met -admin-blabla-blabla-blabla.
Het streepje zorgt ervoor dat hij het ziet als een functie, en begon dus te mekkeren.

Daarbij heb ik het interne e-mail adres voor een PDL ook gevonden (nml pdl@exch.onsbedrijf.com)

Nu verder spelen. :D :D

Okay, status:
Ik krijg een draft.
Ik krijg hem met adres (pdl+ cc ) die ik wil.
Ik krijg hem met een aantal regels die ik als draft wil, echter ik mag maar maximaal dit invullen :

1Please define below %0a%0aPart: %0aINC number: %0aShipping adress:%0aRequested by:%0aRequested for server, servername and type: %0a
alles wat ik meer invul, krijg ik een #value (ongeacht of het een stuk tekst is of een extra witregel) Haal ik dit terug weg, doet hij het weer gewoon.

Oh, en ik gebruik %0a omdat ik geen enter/shift+enter kon gebruiken in B9 (gele vakje) van het test sheet...
-O-

[ Bericht 23% gewijzigd door Prof_Hoax op 21-05-2012 13:29:54 ]
Prof_Hoaxmaandag 21 mei 2012 @ 13:33
1=SUBSTITUTE(B9,CHAR(10),"%0a")

Dit zegt toch : vervang, uit cel B9, character 10 (ik denk enter?) door "%0a" (dus een enter in de mail?)

Tevens, kan ik opmaak aan de tekst meegeven (bold/cursief)
Reflectionnemaandag 21 mei 2012 @ 16:13
Iemand een idee of je een punt in een komma voor de decimalen kan veranderen? (Ik heb Nederlandse Office maar ben bezig met een Engelse presentatie, wil dus m'n grafieken gewoon met punten ipv komma's)
Deetchmaandag 21 mei 2012 @ 16:17
ja dat kan bij je landeninstellingen in windows of in excel apart maar dat laatste zou ik afraden.
Reflectionnemaandag 21 mei 2012 @ 16:19
quote:
3s.gif Op maandag 21 mei 2012 16:17 schreef Deetch het volgende:
ja dat kan bij je landeninstellingen in windows of in excel apart maar dat laatste zou ik afraden.
Oke, zou je me kunnen uitleggen hoe ik dat in windows verander dan?
armmoetzaaier2maandag 21 mei 2012 @ 22:04
ik ben wat aan het maken in open office. het lijkt heel erg op excel.
en heb 2 problemen.

ik wil ergens op het veld (9) neerzetten.
dan zet het programma er zelf -9 neer.
hoe kan ik dat veranderen dat die het niet zelf veranderd.

ik ben allemaal datum er in aan het zetten.
meeste datums lukken, maar datum 01/07/2012 20:45 gaat niet lukken.
dan zet die er 3 hekjes neer
snabbimaandag 21 mei 2012 @ 23:56
@Prof_Hoax
Ja de substitue geeft aan dat de zachte enter (alt enter) moet worden vervangen door %0a. De zachte enter is ascii code 10 en 0a is ook 10 in hexadecimalen.

Ik kan helaas zelf je foutmelding met betrekking tot #value niet reconstrueren. Ik vermoed dat hij ergens vastloopt op de lengte van de cel. Je kan dit omzeilen door als eerste teken een ' te geven. De ' is voor Excel een indicatie dat het om een "text" cel gaat en niet om een formule. Dit moet ook werken voor je probleem met een cel beginnende met een streepje oftewel -

Met betrekking tot het deel voor bold/underline etc. Ik weet niet hoe dit via een dergelijke mailto link werkt. Kon ook geen voorbeeld hiervoor vinden en vermoed zelfs dat het onmogelijk is. Wanneer je dat soort opmaak nodig hebt, ben je wel aan een macro gebonden.
snabbidinsdag 22 mei 2012 @ 00:00
quote:
17s.gif Op maandag 21 mei 2012 16:19 schreef Reflectionne het volgende:

[..]

Oke, zou je me kunnen uitleggen hoe ik dat in windows verander dan?
Windows XP: Configuratiescherm (Control Panel) -> Landsinstellingen (Regional and language options) -> Aanpassen (Customize) de rest wijst zich vanzelf
Windows 7: Configuratiescherm -> Klok taal en regio -> Land en taal -> Knopje Meer instellingen

Na aanpassen pas excel openen.
Prof_Hoaxdinsdag 22 mei 2012 @ 07:41
SPOILER
quote:
0s.gif Op maandag 21 mei 2012 22:04 schreef armmoetzaaier2 het volgende:
ik ben wat aan het maken in open office. het lijkt heel erg op excel.
en heb 2 problemen.

ik wil ergens op het veld (9) neerzetten.
dan zet het programma er zelf -9 neer.
hoe kan ik dat veranderen dat die het niet zelf veranderd.

ik ben allemaal datum er in aan het zetten.
meeste datums lukken, maar datum 01/07/2012 20:45 gaat niet lukken.
dan zet die er 3 hekjes neer
Iets wat mij hielp met e-mail, rechterklik (in excel dan toch) endan cell format en dan aangeven dat het om een datum gaat :@

Oh by the way :

Als ik de cell vul tot aan het volgende: " servname and type:" gaat het prima:
SPOILER
0Ya66.jpg
Zodra ik een regel/tekst toe voeg
SPOILER
ljt0a.png
edit: ook het ' teken voor de tekst zetten (alleen voor het eerste karakter neem ik aan) doet niets, of althans, het helpt niet. Lijkt inderdaad alsof de tekst te lang is...

[ Bericht 14% gewijzigd door Prof_Hoax op 22-05-2012 07:50:25 ]
Deetchdinsdag 22 mei 2012 @ 08:19
quote:
0s.gif Op maandag 21 mei 2012 22:04 schreef armmoetzaaier2 het volgende:
ik ben wat aan het maken in open office. het lijkt heel erg op excel.
en heb 2 problemen.

ik wil ergens op het veld (9) neerzetten.
dan zet het programma er zelf -9 neer.
hoe kan ik dat veranderen dat die het niet zelf veranderd.

ik ben allemaal datum er in aan het zetten.
meeste datums lukken, maar datum 01/07/2012 20:45 gaat niet lukken.
dan zet die er 3 hekjes neer
Probleem 1 heeft te maken met je getal notatie. Excel 2010 doet dat ook automatisch.
je kunt van deze cellen de notatie aanpassen door een custom format toe te voegen:
#,##0.00;(##0.00) http://pressf1.pcworld.co.nz/archive/index.php/t-7760.html

Of je kunt in je region settings (land instellingen) de notatie voor negatieve getallen aanpassen in de stijl (0.0) maar dan wordt dat overal toegepast. In windows 7: region and language // formats // additional settings // negative number format
Dit laatste werkt pas als je je excel sluit, de region settings aanpast en dan excel weer opstart.

Het tweede probleem heeft te maken met je kolom breedte, als je die aanpast zie je de datum/tijd wel.
Meike26dinsdag 22 mei 2012 @ 11:08
Goed nieuws *O*

Ik was het wachten op UWV/reïntegratie zat (ze moesten nog besluiten of ik recht had op vergoeding cursus-opleiding), dus heb vorige week cursus Basis Excel 2010 aangevraagd en deze week de bevestiging. Gewoon maar uit eigen zak betalen, de kans dat ik eerder aan het werk kan is wel groter nu :)

11 en 12 Juni zit ik in de schoolbanken :D
DaFandinsdag 22 mei 2012 @ 11:12
Gefeliciteerd, basiskennis Excel/Office is toch wel een pre of vereiste bij vrijwel alle (kantoor)baantjes ^O^

[ Bericht 1% gewijzigd door DaFan op 22-05-2012 16:44:24 ]
Deetchdinsdag 22 mei 2012 @ 15:23
enjoy en welkom in de wondere wereld van excel ^O^
mr-putawoensdag 23 mei 2012 @ 11:41
Ik heb het een en ander geprobeerd maar kom er maar niet op.(Excel 2003)
Omschrijving:
Op veld D3 moet een urencode worden ingevuld.
Als deze gelijk is aan PR, dan moeten de velden F3,G3,H3 worden ingevuld.
Daarom wil ik als D3=niet PR, de velden F3,G3,H3 rood gekleurd hebben.

Het is iets met de als-functie en voorwaardelijke opmaak als ik het goed heb;)
Ik hoor het graag.
Alvast bedankt.

[ Bericht 1% gewijzigd door mr-puta op 23-05-2012 11:48:59 ]
Deetchwoensdag 23 mei 2012 @ 12:03
quote:
0s.gif Op woensdag 23 mei 2012 11:41 schreef mr-puta het volgende:
Ik heb het een en ander geprobeerd maar kom er maar niet op.(Excel 2003)
Omschrijving:
Op veld D3 moet een urencode worden ingevuld.
Als deze gelijk is aan PR, dan moeten de velden F3,G3,H3 worden ingevuld.
Daarom wil ik als D3=niet PR, de velden F3,G3,H3 rood gekleurd hebben.

Het is iets met de als-functie en voorwaardelijke opmaak als ik het goed heb;)
Ik hoor het graag.
Alvast bedankt.
je bent er al bijna.

Selecteer cel F3,G3 en H3
kies voorwaardelijke opmaak
Zet in de formule balk: =$D$3<>"PR"
Stel de opmaak in
Klaar
mr-putawoensdag 23 mei 2012 @ 12:40
thanks! Nu werkt alles;)
mr-putawoensdag 23 mei 2012 @ 13:34
Toch nog een vraag,
Ik heb nu:
Als D3= niet PR dan worden F3,G3,H3 rood.
Als D3=PR moeten deze velden namelijk ingevuld worden.
Is het mogelijk om als D3= niet PR, dan de velden F3,G3,H3 te blokkeren voor invoer?
Het lijkt me btw wel mogelijk met valideren of iets.
Wie weet hoe?

Alvast bedankt

[ Bericht 12% gewijzigd door mr-puta op 23-05-2012 13:47:49 ]
Deetchwoensdag 23 mei 2012 @ 14:01
Volgens mij alleen met VBA (macro)

http://answers.google.com/answers/threadview/id/736450.html
#ANONIEMwoensdag 23 mei 2012 @ 14:07
Ik heb 3 excel bestanden. Ik wil al deze werkbladen in 1 bestand hebben maar ik kan dit niet kopieren en plakken zonder dat alles door elkaar gaat, er zitten verwijzingen, locks. Iemand enig idee?

[ Bericht 0% gewijzigd door #ANONIEM op 23-05-2012 14:07:31 ]
yozdwoensdag 23 mei 2012 @ 14:11
Ik heb een dataset die er zo uit ziet:

[kolom A] [kolom B] [kolom C]
Kees 1 450
Kees 2 300
Kees 3 200
Henk 1 964
Piet 1 75
Piet 1 312

Nu wil ik graag in een ander werkblad een lijstje krijgen met alleen de gegevens van 1 persoon. Ik heb daarvoor in het werkblad in cel D1 de naam van de persoon staan (is variabel en wordt gebaseerd op de map waarin het Excel bestand staat).

Dus in map Kees komt dan een Excelbestand met:

[kolom A] [kolom B] [kolom C]
Kees 1 450
Kees 2 300
Kees 3 200

in map Henk:

[kolom A] [kolom B] [kolom C]
Henk 1 964

en in map Piet:

[kolom A] [kolom B] [kolom C]
Piet 1 75
Piet 1 312

Hoe kan ik zoiets maken?
mr-putawoensdag 23 mei 2012 @ 14:21
quote:
3s.gif Op woensdag 23 mei 2012 14:01 schreef Deetch het volgende:
Volgens mij alleen met VBA (macro)

http://answers.google.com/answers/threadview/id/736450.html
thanks, al kom ik er nu nog niet uit;)
snabbiwoensdag 23 mei 2012 @ 22:21
quote:
0s.gif Op woensdag 23 mei 2012 14:07 schreef Dimachaerus het volgende:
Ik heb 3 excel bestanden. Ik wil al deze werkbladen in 1 bestand hebben maar ik kan dit niet kopieren en plakken zonder dat alles door elkaar gaat, er zitten verwijzingen, locks. Iemand enig idee?
Selecteer al je tabbladen in je Excel document (door je shift knop ingedrukt te houden). Klik met je rechter muistoets op een tabblad en vervolgens Blad verplaatsen of kopiëren
snabbiwoensdag 23 mei 2012 @ 22:28
quote:
0s.gif Op woensdag 23 mei 2012 14:11 schreef yozd het volgende:
Ik heb een dataset die er zo uit ziet:

etc
Eigenlijk is je omschrijving best breed. Er zijn hele ingewikkelde manieren waarop je zoiets kunt doen, maar ik zou eens serieus kijken hoeveel werk het is om vanuit je 'moederbestand' een versie te maken met een filter op Kees (of alles behalve kees en die regels te verwijderen zodat alleen kees over blijft).

Je kan ook met Macro's aan de gang om filters te regelen, maar ik vraag me af of dit het waard is.

De beste methode ligt eigenlijk in Access en niet in Excel. Ook kan je het gebruik van document samenvoegen in Word overwegen. Mogelijkheden te over en zonder specifieke casus is het lastig dingen uit te sluiten.
snabbiwoensdag 23 mei 2012 @ 22:48
quote:
0s.gif Op woensdag 23 mei 2012 13:34 schreef mr-puta het volgende:
Toch nog een vraag,
Ik heb nu:
Als D3= niet PR dan worden F3,G3,H3 rood.
Als D3=PR moeten deze velden namelijk ingevuld worden.
Is het mogelijk om als D3= niet PR, dan de velden F3,G3,H3 te blokkeren voor invoer?
Het lijkt me btw wel mogelijk met valideren of iets.
Wie weet hoe?

Alvast bedankt
Tja wanneer je niet met macro's om kan gaan (zoals Deetch al aanhaalt) kan je met valideren aan de slag gaan, maar het wordt er niet mooi op.

Voorbeeld:
Wanneer je in F3 uren schrijft bijvoorbeeld en je alleen uren mag schrijven wanneer in D3 die PR staat, dan kan je dit afdwingen door in valideren te kiezen voor bijvoorbeeld het gebruik van gehele getallen. Je moet nu een minimum en een maximum waarde opgeven. Zorg er voor dat de cellen die deze minimum en maximum wijzigen op basis van de waarde in cel D3. Wanneer het minimum 0 is en het maximum ook, dan kan iemand dus geen uren inleveren.

Het is een beetje lastig omschrijven maar hier is een voorbeeld:
http://www.mijnbestand.nl/Bestand-UWP4ZTWQK3UH.xlsx

Wanneer je iets invult in F3 zonder dat D3 PR is, dan krijg je een foutmelding in je scherm. Het is alleen ontzettend veel werk om dit op te zetten en je kan het ook omzeilen door eerst PR in te voeren, dan de getallen en tot slot PR te verwijderen. Dit wordt niet als fout gezien.
Prof_Hoaxdonderdag 24 mei 2012 @ 07:28
snabbi, zou je hier nog eens kunnen kijken:

[Excel] Het grote Excel vragen topic #32

Ik weet niet of het mogelijk is een extra cel aan de " inhoud bericht " te geven?
mwvrsdonderdag 24 mei 2012 @ 18:59
Hallo,

Nadat ik de macro heb gebruikt die snabbi hier heeft neergezet om tekst te 'unwrappen', loop ik tegen iets nieuws aan.

Om bepaalde 'readability statistics' te krijgen gebruik ik een script dat op mijn eigen webhost draait. De scores wil ik importeren in Excel. Ik heb deze website gebruikt om een dynamic web query aan te maken.

Dit leek vlekkeloos te lukken wanneer ik het testte met dummy text. Als ik echter naar een cel verwijs waar de echte tekst staat die ik wil analyseren krijg ik de foutmelding: "Bad parameter type. Microsoft Office Excel is expecting a different kind of value than was provided."

Een willekeurige tekst ziet er zo uit:
quote:
Our Story
Studio Rage is twenty-five years in the making. Renowned stylist and waxing extraordinaire, Mark Pettis, is finally opening his own full service salon • studio in the heart of West Hollywood, California! Studio Rage will offer everything from men’s cuts to full color, style and blow dry. Studio Rage will also offer a full range of waxing services to beautify every inch of your body, both seen and unseen!

The Impact
With your assistance in opening the doors at Studio Rage, you are becoming part of a quarter-century dream built on the interconnection of client happiness and shared artistic expression without compromising value.

What We Need & What You Get
Studio Rage is an independent start-up salon that will open its doors with zero reliance on high-interest bank loans or outside investment. This allows Mark to oversee all aspects of quality and keep overhead down, so the public can enjoy great hair and wax at a reasonable cost. This is where you come in—Studio Rage needs a deposit to secure the lease, a face-lift and license fees before Mark opens the doors April 1st! Your donations will help pay for the lease deposit, signage, city-mandated licensing fees, and more! Every dollar you donate will go directly to the goal of getting the doors open by April 1, 2012! In return, Studio Rage is going to give back to you with awesome and generous perks such as discounted hair products, free salon services and more! Mark wants every single person who donates to see and feel what their donation has accomplished, and to be excited to take advantage of the perks for months to come. If Mark doesn’t reach his fundraising goal, he will put all raised funds into the deposit for the lease and pursue other avenues for attaining his goal in order to open the salon doors by April 1st!

Other Ways You Can Help
Regardless of how much you are able to donate, you can also help get the word out by posting this campaign to your facebook, tumblr, twitter, linkedin or other social networking sites! Don’t be afraid to mass email! With your help these tough economic times can be ridden out looking fabulous and making the local economy a better place to thrive.
STUDIO RAGE APRIL 1, 2012!
Thank you so much for your support!
Is dit teveel van het goede en kan Excel dit niet aan? Of zie ik iets over het hoofd? Wanneer ik de tekst direct als waarde van de variabele van het script in de url in de browser invoer, werkt het prima.

Zo dus:
www.mijnsite.nl/script.php?text=[copy/paste tekst hier]

Iemand enig idee wat er aan de hand is, want het zou super zijn als ik dit werkend krijg! Dank!!
snabbidonderdag 24 mei 2012 @ 21:10
quote:
99s.gif Op donderdag 24 mei 2012 07:28 schreef Prof_Hoax het volgende:
snabbi, zou je hier nog eens kunnen kijken:

[Excel] Het grote Excel vragen topic #32

Ik weet niet of het mogelijk is een extra cel aan de " inhoud bericht " te geven?
De cel waar de mailto in staat (A19) heeft een formule om van de mailto een hyperlink te maken. Ik denk dat hij vastloopt op deze formule. Wat je kan proberen is om dit via Invoegen Hyperlink te doen zodat je geen formule gebruikt.

Ook zijn er hele andere oplossingen denkbaar (niets is zo leuk als een workaround). Waarom maak je niet een standaardbrief in Word en gebruik je in Word de functie document samenvoegen om van jouw "template" de betreffende gegevens op te halen en dit te versturen via de mail. De Word tekst zal je opmaak wel meenmen.

Nog 101 andere mogelijkheden over :P
snabbidonderdag 24 mei 2012 @ 21:18
quote:
0s.gif Op donderdag 24 mei 2012 18:59 schreef mwvrs het volgende:
Hallo,

etc
Iemand enig idee wat er aan de hand is, want het zou super zijn als ik dit werkend krijg! Dank!!
Het is lastig om dit zo van een afstand te beoordelen, maar wellicht heeft het te maken dat je tekst een enter bevat. Hierdoor verstuur je wellicht alleen het bericht
www.mijnsite.nl/script.php?text=[Our Story
Alle tekst die daar achter staat inclusief de sluitende ] wordt dan niet meegenomen met als gevolg dat hij zegt dat je syntax niet meer klopt. Je zou dan de enters moeten vervangen door een %0a zoals dat oof voor Prof_hoax is gebeurd.

Even los daarvan denk ik wat je hier via excel wilt doen, beter via een andere scripttaal kunt regelen.
mwvrsdonderdag 24 mei 2012 @ 21:58
Dat was ook mijn eerste gedachte, maar als ik alle enters verwijder dan blijft de melding. Wanneer ik een dummytekst met enters probeer geeft dat geen probleem.

Ik ben het met je eens dat ik dit wellicht niet de meest handige methode is. Ik ben echter niet zo ervaren met scripttalen. Ik zat te denken dat het misschien mogelijk is om het via MySQL te doen. Is het mogelijk om mijn 6000 (met bijbehorend id) tekstvelden van Excel naar een MySQL database te krijgen? Bv het Excelbestand omzetten naar csv?
snabbidonderdag 24 mei 2012 @ 22:54
Excel kan een grote tekst wel opslaan, maar niet verwerken. Je loopt vermoedelijk tegen dezelfde problemen op als Prof_Hoax. De formule waarmee Excel werkt wordt te lang.

MySQL hulpprogramma's zoals door veel webhosters ook worden aangeboden bieden inderdaad de mogelijkheid voor het inlezen van Excelbestanden of tekstbestanden zoals csv.

Ik weet natuurlijk niet precies wat context is van je probleem en je geeft aan dat je een script gebruikt voor de statistieken. Ik vermoed dat dit een script is in php of een ander script dat de MySQL database als bron voor zijn resultaten gebruikt.

Het uploaden van zo'n tekst naar je MySQL database kan je eigenlijk ook via een simpel HTML bestandje en php bestandje laten verlopen. Denk bijvoorbeeld iets in de vorm van wat je op je eigen computer kan zetten of op de website:
1
2
3
4
5
6
<html>
<form action="http:/www.mijnsite.nl/uploadtekst.php" method="post">
<input type="text" name="mijnverhaal">
<input type="submit" name="submit" value="Verstuur">
</form>
</html>

Dit onderstaande deel zet je op je website waardoor je je database vult met je tekst verhaal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html>
<?php
$location = "127.0.0.1"; 
$username = "snabbi"; 
$password = "test1234"; 
$database = "verhalen_database"; 

$verhaal = $_POST['mijnverhaal'];

$conn = mysql_connect("$location","$username","$password"); 
if (!$conn) die ("Could not connect MySQL"); 
mysql_select_db($database,$conn) or die ("Could not open database!"); 
$query = "INSERT INTO `tabel` (`verhaal`) VALUES ($verhaal)";
$results = mysql_query($query,$conn);
mysql_close($conn);
?>
</html>
(disclaimer de code hierboven is gevoelig voor beveiligingslekken en is dus zeker niet veilig wanneer je anderen ook op je site laten komen om teksten te uploaden. Dit voorbeeld is dan ook niets meer dan om je een idee te geven hoe je dit kan doen).
mwvrsdonderdag 24 mei 2012 @ 23:26
Zojuist heb ik geprobeerd een subset van mijn teksten te op te slaan als csv-bestand.

Het script waar ik over sprak is inderdaad in php. Met phpmyadmin van mijn webhost kan ik csv-bestanden importeren in een MySQL database. Vervolgens zou het dus mogelijk moeten zijn om het script te runnen over deze velden en de scores in een nieuwe kolom op te slaan. Vervolgens de MySQL db exporteren als csv en weer openen in Excel. :)

Ik ga hier wel aan uitkomen. Bedankt voor het meedenken, dat heeft enorm geholpen!
Hellyvrijdag 25 mei 2012 @ 16:02
Ik heb een kolom met data en een kolom met getallen daarnaast, nu wil ik het getal hebben wat naast de huidige datum staat, hoe doe ik dit?

Heb al nar LOOKUP zitten kijken, maar het lukt me nog niet echt.
Individualvrijdag 25 mei 2012 @ 17:02
Een tijdje hier niet meer gepost, maar heeft iemand ervaring met een SQL ODBC link naar Excel?

Een directe link naar een lege sheet heeft ie gedaan in 4 minuten, maar zo snel als er wat formattering/in cell drop downs bij komen kijken duurt het van 30 minuten tot nu al ruim 1,5 uur.

Zelfs copy-pasten van die 4 minuten lege sheet naar de geformatteerde sheet duurde 30 minuten..

Waar zit de memory leak of wie kan me een zoekterm geven om dit veel sneller te laten lopen?

(het gaat om 17,800 rijen en 60 colommen)
#ANONIEMvrijdag 25 mei 2012 @ 17:16
Kun je misschien iets met ApplicationEnablevents = false en applicationcalculation=false? Zo weerhoud je in iedergeval Excel van tijdverspilling bij het (her)berekenen van de cellen

Zie in de startpost MOA en MOU
hendrik2009vrijdag 25 mei 2012 @ 19:45
@Helly: Vlookup indien iedere datum een keer voor komt
snabbivrijdag 25 mei 2012 @ 21:21
quote:
0s.gif Op vrijdag 25 mei 2012 17:02 schreef Individual het volgende:
Een tijdje hier niet meer gepost, maar heeft iemand ervaring met een SQL ODBC link naar Excel?

Een directe link naar een lege sheet heeft ie gedaan in 4 minuten, maar zo snel als er wat formattering/in cell drop downs bij komen kijken duurt het van 30 minuten tot nu al ruim 1,5 uur.

Zelfs copy-pasten van die 4 minuten lege sheet naar de geformatteerde sheet duurde 30 minuten..

Waar zit de memory leak of wie kan me een zoekterm geven om dit veel sneller te laten lopen?

(het gaat om 17,800 rijen en 60 colommen)
Waarom zet je je spreadsheet niet om naar Access? Als het alleen om je invoer gaat, dan zet je in Excel vervolgens een query naar je access zodat je je access bestand synchroniseert op basis van de input uit excel.

sQL = query = voor database bedoeld.
snabbivrijdag 25 mei 2012 @ 21:23
quote:
0s.gif Op vrijdag 25 mei 2012 19:45 schreef hendrik2009 het volgende:
@Helly: Vlookup indien iedere datum een keer voor komt
^O^ vlookup (of in het nederland vert.zoeken) met als zoekwaarde de betreffende datum. Zorg dat in je matrix de meest linke kolom begint bij de datum en vervolgens uittellen naar rechts voor de hoeveelste kolom je wilt teruggeven.
AlwaysConnectedzaterdag 26 mei 2012 @ 12:16
Ik zoek een mogelijkheid om vanuit dit excel bstand
http://dl.dropbox.com/u/18913775/vraag%20aanbod.xls

Een mooie grafiek te maken waar in je per periode per beroepsgroep de vraag en aanbod kan zien
wie kan mij verder helpen?

Ik ziet het namenlijk nu ff niet

thnx *O*
geelkuikentjezondag 27 mei 2012 @ 08:24
Mijn datum invoer is in een gesloopt :(
Voer ik de datum in in een cel: "200412". Dit wordt normaal omgezet naar 20-04-2012. Krijg ik nu:
14-9-2448 als datum terug 8)7
Voer ik in "20-04-2012" dan blijft de datum wel staan zoals het hoort. Hoe krijg ik dit weer terug?
Ik heb Excel 2007.
Twentsche_Roszondag 27 mei 2012 @ 09:26
Ik heb in bepaald cellen ingetikt:

- paard
- hond

Excel maakt ervan:

#NAAM?
#NAAM?

Als ik edit (F2) doe dan staat er:
=- paard
=- hond

Hoe krijg ik dit terug?
Moet ik de cellen 1 voor 1 herstellen en de streepjes (die Excel als minteken ziet) vervangen door andere streepjes, die excel niet voor mintekens ziet?

[ Bericht 12% gewijzigd door Twentsche_Ros op 27-05-2012 09:39:17 ]
Twentsche_Roszondag 27 mei 2012 @ 09:37
quote:
0s.gif Op zondag 27 mei 2012 08:24 schreef geelkuikentje het volgende:
Mijn datum invoer is in een gesloopt :(
Voer ik de datum in in een cel: "200412". Dit wordt normaal omgezet naar 20-04-2012. Krijg ik nu:
14-9-2448 als datum terug 8)7
Voer ik in "20-04-2012" dan blijft de datum wel staan zoals het hoort. Hoe krijg ik dit weer terug?
Ik heb Excel 2007.
Je zegt:
Voer ik de datum in in een cel: "200412". Dit wordt normaal omgezet naar 20-04-2012
Is het dan ook echt een datumveld?

Als een cel is opgemaakt als datumveld en je tikt er een getal in wordt het omgezet als het rangnummer van de dag waarbij 1-1-1900 geldt als nr 1 en 2-1-1900 als nr 2 en nr 200.412 is het dagnummer dat uiteindelijk neerkomt op de datum 14-09-2448.
Er is 1 fout bij excel: Ze hebben 29-02-1900 ook meegeteld. En dat moest niet. 1900 is geen schrikkeljaar.
Wat is er mis mee om 20-4-12 in te tikken ipv 200412.
Want 20-4-12 kan Excel direct vertalen als datumveld. 200412 ziet excel als een getal en wordt het datumrangnummer gebruikt.
Twentsche_Roszondag 27 mei 2012 @ 09:38
quote:
0s.gif Op zondag 27 mei 2012 09:26 schreef Twentsche_Ros het volgende:
Ik heb in bepaald cellen ingetikt:

- paard
- hond

Excel maakt ervan:

#NAAM?
#NAAM?

Als ik edit (F2) doe dan staat er:
=- paard
=- hond

Hoe krijg ik dit terug?
Moet ik de cellen 1 voor 1 herstellen en de streepjes (die Excel als minteken ziet) vervangen door andere streepjes die excel niet ziet als minteken?

ralfiezondag 27 mei 2012 @ 09:52
zet er een ' voor

'- paard
'- hond
actuarisjezondag 27 mei 2012 @ 09:54
Mocht het om veel cellen gaan, dan kun je dus zoeken & vervangen gebruiken (vervang de = door een ' )
Twentsche_Roszondag 27 mei 2012 @ 09:55
quote:
0s.gif Op zondag 27 mei 2012 09:26 schreef Twentsche_Ros het volgende:
Ik heb in bepaald cellen ingetikt:

- paard
- hond

Excel maakt ervan:

#NAAM?
#NAAM?

Als ik edit (F2) doe dan staat er:
=- paard
=- hond

Hoe krijg ik dit terug?
Moet ik de cellen 1 voor 1 herstellen en de streepjes (die Excel als minteken ziet) vervangen door andere streepjes, die excel niet voor mintekens ziet?

Laat maar. Het is opgelost. Alle foutmeldingen selecteren. Ctrl-H (maw vervangen). De = door een spaties. Was alles maar zo simpel...
snabbizondag 27 mei 2012 @ 10:36
quote:
0s.gif Op zondag 27 mei 2012 08:24 schreef geelkuikentje het volgende:
Mijn datum invoer is in een gesloopt :(
Voer ik de datum in in een cel: "200412". Dit wordt normaal omgezet naar 20-04-2012. Krijg ik nu:
14-9-2448 als datum terug 8)7
Voer ik in "20-04-2012" dan blijft de datum wel staan zoals het hoort. Hoe krijg ik dit weer terug?
Ik heb Excel 2007.
Wat je nu noemt is eigenlijk de standaard manier hoe Excel het zou moeten verwerken. Dit rekent alles terug naar de eerste dag op 1-1-1900. 200412 dagen na de 0-1-1900 is 14-9-2448.

Ik zou geen manier weten hoe je Excel instelt om te handelen zoals je beschrijft (zonder gebruik van formules of macro's). De kortste invoer is '20-4-12'. De streepjes zijn nodig voor Excel om te zien dat je het over een datum hebt.
snabbizondag 27 mei 2012 @ 10:43
quote:
0s.gif Op zaterdag 26 mei 2012 12:16 schreef AlwaysConnected het volgende:
Ik zoek een mogelijkheid om vanuit dit excel bstand
http://dl.dropbox.com/u/18913775/vraag%20aanbod.xls

Een mooie grafiek te maken waar in je per periode per beroepsgroep de vraag en aanbod kan zien
wie kan mij verder helpen?

Ik ziet het namenlijk nu ff niet

thnx *O*
Je vraag is iets te breed op het moment. Wil je iedere beroepsgroep in 1 gratiek hebben of alle beroepsgroepen in 1 grafiek. Moet de vraag van de beroepsgroep en het aanbod in een lijntje worden weergegeven of wil je dat de afstand tussen vraag en aanbod wordt weergegeven. Te veel mogelijkheden!

Als je met je muis klikt in je tabel (willekeurig getal) en kiest voor Invoegen -> Spreiding krijg je de mogelijkheid voor vloeiende lijnen. Excel zal automatisch je beroepsgroep voor vraag en aanbod plotten in dezelfde kleur.
snabbizondag 27 mei 2012 @ 10:47
quote:
0s.gif Op zondag 27 mei 2012 09:37 schreef Twentsche_Ros het volgende:
Er is 1 fout bij excel: Ze hebben 29-02-1900 ook meegeteld. En dat moest niet. 1900 is geen schrikkeljaar.
Dit 'probleem' kun je oplossen via de Excel opties en over te schakelen naar de 1904 datum notatie. Al zal niemand hier over vallen denk ik zo.
Twentsche_Roszondag 27 mei 2012 @ 12:12
Het teken "*" geeft bij verticaal zoeken altijd het bovenste resultaat, merk ik net.
Is dit een fout van Excel?

Stel je doet:

paard op AB6
hond op AB7
aaa op AC6
aa op AC7

* op AB10

en

=VERT.ZOEKEN(AB10;AB6:AD7;2;ONWAAR)

op AC 10

dan zou hij:

#N/B

moeten geven. Maar nee hoor:
hij zegt:
aaa

* is dus synoniem voor automatisch de bovenste in de linker rij.
merkwaardig...


Hij doet dit overigens ook met "?" (het vraagteken dus).
Ik meende dat dit met vraagteken wel eens eerder gebeurde bij "vervangen" of zoiets.
Dus ongeacht de werkelijke waarde.

[ Bericht 16% gewijzigd door Twentsche_Ros op 27-05-2012 12:24:44 ]
snabbizondag 27 mei 2012 @ 13:09
Maak er van vert.zoeken("~*"; ... etc)

Hij gebruikt in jouw formule de * in de vorm van dat hier één of meer willekeurige tekens mag staan. Aangezien vert.zoeken altijd het eerste resultaat teruggeeft dat voldoet aan je voorwaarde, is dat hier de eerste regel. Door gebruik van de tilde ~ zeg je tegen Excel dat het daadwerkelijk om een * gaat en niet om de bijzondere betekenis.

Voor het vraagteken geldt hetzelfde. Een vraagteken is altijd één willekeurige karakter.
yozdmaandag 28 mei 2012 @ 23:37
Ik heb in kolom A een aantal gegevens zo staan:

regel 1: A
regel 2:
regel 3: B
regel 4: C
regel 5:
regel 6:
regel 7:
regel 8:
regel 9: D
regel 10:
regel 11: E
regel 12: F
regel 13 G

etc.

De cellen zijn leeg als daarin hetzelfde "type" hoort te staan als in de regel daarboven. (in regel 2 dus een A in regel 5,6,7,8 een C en in regel 10 een D. Ik wil de cellen met dezelfde typen graag mergen. Hoe kan ik dat automatisch doen? Het aantal rijen met gegevens in kolom A is variabel...
snabbidinsdag 29 mei 2012 @ 00:01
Zet in cel B1 de formule: =A1
Zet in cel B2 de formule =ALS(ISLEEG(A2);B1;A2)
Kopieer de formule van cel B2 naar beneden. Nu heb je in kolom B voor iedere regel het type staan waar je naar op zoek bent en kun je gebruik maken van filters.
yozddinsdag 29 mei 2012 @ 00:34
Bedankt! Ik heb ook wat gevonden voor VBA:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Public Sub AutoMerge2()

Dim LastRowToMergeTo As Long
Dim i As Long
Dim LastRow As Long

Application.DisplayAlerts = False

LastRow = Range("B" & CStr(Rows.Count)).End(xlUp).Row

For i = 5 To LastRow

    LastRowToMergeTo = i

On Error Resume Next 

    Do While (Len(Range("A" & CStr(LastRowToMergeTo + 1)).Value) = 0) And (LastRowToMergeTo + LastRow)
        LastRowToMergeTo = LastRowToMergeTo + 1

On Error Goto 0 

    Loop

    With Range("A" & CStr(i) & ":A" & CStr(LastRowToMergeTo))
        .Merge
        .WrapText = True
        .VerticalAlignment = xlVAlignTop
    End With

    i = LastRowToMergeTo

Next i

Application.DisplayAlerts = True
End Sub

De code doet precies wat ik wil, maar hij geeft op het einde een error in deze regel:

1 Do While (Len(Range("A" & CStr(LastRowToMergeTo + 1)).Value) = 0) And (LastRowToMergeTo + LastRow)

Deze regel was oorspronkelijk:

1 Do While (Len(Range("A" & CStr(LastRowToMergeTo + 1)).Value) = 0) And (LastRowToMergeTo  LastRow)

Maar dan runt die de macro helemaal niet. Met dat +'je wel, maar krijg ik wel een error op het einde. (het resultaat is wel goed). Iemand een idee hoe ik die error weg krijg?

/edit/
Aha! Het plusje moet veranderd worden in een kleiner dan teken!

[ Bericht 1% gewijzigd door yozd op 29-05-2012 00:51:09 ]
Burritowoensdag 30 mei 2012 @ 02:12
Een simpele vraag.

Ik heb een lijst met waardes bijvoorbeeld:

10
50
-30
-5

Nu wil ik dat uit die lijst, automatisch, alleen OF de positieve getallen OF alle negatieve getallen worden opgeteld tot een totaal.
Dus:

60
-35

Dank :)
Burritowoensdag 30 mei 2012 @ 04:18
Gelukt :)
Deetchwoensdag 30 mei 2012 @ 08:40
quote:
99s.gif Op woensdag 30 mei 2012 04:18 schreef Burrito het volgende:
Gelukt :)
met een sumif waarschijnlijk? =sumif(A1:A20,"<0") en =sumif(A1:A20,">0")

of als je in cel B1 de tekst POS of NEG zet, kan het met deze functie:
=if(B1="NEG",sumif(A1:A20,"<0"),if(B1="POS",sumif(A1:A20,">0"),"Kies POS of NEG"))
Twentsche_Roswoensdag 30 mei 2012 @ 21:52
Weer een ontdekte eigenaardigheid van Excel.
Een cel kan maximaal 32767 tekens bevatten.
Alleen:
Bij de functie Ctrl-f zoekt Excel "slechts" in de eerste 8192 tekens. Een zinsnede of stuk tekst dat na 8192 zich bevindt wordt niet opgemerkt.
Hoe is jullie ervaring?
snabbiwoensdag 30 mei 2012 @ 22:54
quote:
0s.gif Op woensdag 30 mei 2012 21:52 schreef Twentsche_Ros het volgende:
Hoe is jullie ervaring?
Dat je het verkeerde programma gebruikt wanneer een cel meer dan 8000 karakters moet bevatten en je er nog steeds bewerkingen mee wilt doen.
AlwaysConnecteddonderdag 31 mei 2012 @ 06:32
quote:
0s.gif Op zondag 27 mei 2012 10:43 schreef snabbi het volgende:

[..]

Je vraag is iets te breed op het moment. Wil je iedere beroepsgroep in 1 gratiek hebben of alle beroepsgroepen in 1 grafiek. Moet de vraag van de beroepsgroep en het aanbod in een lijntje worden weergegeven of wil je dat de afstand tussen vraag en aanbod wordt weergegeven. Te veel mogelijkheden!

Als je met je muis klikt in je tabel (willekeurig getal) en kiest voor Invoegen -> Spreiding krijg je de mogelijkheid voor vloeiende lijnen. Excel zal automatisch je beroepsgroep voor vraag en aanbod plotten in dezelfde kleur.
Bedankt voor mee denken, we laten het lekker in tabel staan.
Grafiek bleek achter niet werkbaar
Prof_Hoaxdonderdag 31 mei 2012 @ 07:36
* Prof_Hoax is inmiddels kaal. Het lukt gewoonweg niet -O- Hoerenzooi -O-

Ik geef het op, het wordt een mailto met het goede adres + cc en subject. De rest vullen ze zelf maar in. Luie mexicanen mogen ook best wat doen :9

Alsnog erg bedankt voor het meedenken Deetch en Snabbi ^O^
Holy_Goatdonderdag 31 mei 2012 @ 13:05
quote:
14s.gif Op donderdag 31 mei 2012 07:36 schreef Prof_Hoax het volgende:
* Prof_Hoax is inmiddels kaal. Het lukt gewoonweg niet -O- Hoerenzooi -O-

Ik geef het op, het wordt een mailto met het goede adres + cc en subject. De rest vullen ze zelf maar in. Luie mexicanen mogen ook best wat doen :9

Alsnog erg bedankt voor het meedenken Deetch en Snabbi ^O^
Zo.
Opgelost nu?
zoja zet ik de source ook even hier neer.
Prof_Hoaxdonderdag 31 mei 2012 @ 13:18
quote:
0s.gif Op donderdag 31 mei 2012 13:05 schreef Holy_Goat het volgende:

[..]

Zo.
Opgelost nu?
zoja zet ik de source ook even hier neer.
Ik ga nu eerst even proberen of ik het ingebouwd krijg in mijn eigen file. Maar qua functionaliteit is het echt precies wat ik zocht :Y *O*
Holy_Goatdonderdag 31 mei 2012 @ 14:37
das dan een kratje HJ aub :P
Prof_Hoaxdonderdag 31 mei 2012 @ 14:55
quote:
0s.gif Op donderdag 31 mei 2012 14:37 schreef Holy_Goat het volgende:
das dan een kratje HJ aub :P
Bijna bijna :9 heb hem nu zo ver, dat in mijn eigen workbook, ook een button toegevoegd, die een de macro oproept die mijn mail + onderwerp + cc adres invult, echter hij neemt de "body" niet mee, dus krijg een leeg mailtje...

even verder zoeken :9

Oh, en als het lukt en het is een beetje in de buurt, komt dat kratje zeker goed :9
wicky2010donderdag 31 mei 2012 @ 20:52
Ik loop tegen het volgende probleem aan: Ik heb een bepaalde kolom als x gedefinieerd, bijvoorbeeld kolom a. Nu wil ik graag berekenen in cel b1 => cel a2 - cel a1 met gebruik van mijn gedefinieerde kolom naam x.
Cel a1 kan ik gewoon met mijn gedefinieerde naam "x" aangeven, maar hoe kan ik dat doen voor cel a2?
Bestaat er zoiets als: cel b1 => (x+1) - x?
Deetchvrijdag 1 juni 2012 @ 10:05
Ik neem aan dat je een named range hebt gemaakt?

Stel je selecteert A2:A12 en geeft die als naam "fok" (define name etc etc)
met onderstaande functie kun je de 2e waarde uit deze named range halen

=INDEX(fok,2), je krijgt nu de waarde uit cel A3

verander de named range nu naar A2:B12
=INDEX(fok,2) geeft een foutmelding omdat je alleen een rijnummer aangeeft (en je named range nu ook 2 kolommen heeft)

=INDEX(fok,2,1) geeft weer de waarde uit A3

=INDEX(fok,8,2) geeft de waarde uit B9
wicky2010vrijdag 1 juni 2012 @ 11:43
Bedankt voor je antwoord, dit was inderdaad precies wat ik bedoelde!
Deetchvrijdag 1 juni 2012 @ 12:08
quote:
0s.gif Op vrijdag 1 juni 2012 11:43 schreef wicky2010 het volgende:
Bedankt voor je antwoord, dit was inderdaad precies wat ik bedoelde!
^O^
mwvrszondag 3 juni 2012 @ 16:10
Ik heb een Excel-bestand dat er ongeveer zo uit ziet:

1
2
3
4
5
6
7
8
9
10
11
12
13
id waarde gemiddelde
1 10
1 15
1 20
1 30
1 90
2 5
2 7
2 20
2 30
3 10
3 40
3 17

Alle waardes zijn "willekeurig", maar waardes met hetzelfde id horen bij elkaar. Nu wil ik het gemiddelde van de waardes die bij elk id horen weten. Ik heb de volgende formule geprobeerd:

=AVERAGEIF(A:A;A2;B:B)

voor id 1 zou de uitkomst dus 33 moeten zijn, voor id 2 -> 15,5, voor id 3 -> 22,33

De formule lijkt op het eerste gezicht het gewenste resultaat te geven (voor de eerste paar rijen), maar als ik verder naar beneden scroll dan klopt het niet meer. Er zijn verschillende uitkomsten voor rijen met hetzelfde id, dat zou niet mogelijk moeten zijn.

Doe ik iets verkeerd, of duurt het erg lang om Excel dit te laten berekenen (het sheet heeft meer dan 300.000 rijen)? Is er een alternatieve/simpelere? manier om dit te berekenen? In principe hoef ik de uitkomst per id maar één keer te hebben.

Ik heb hetzelfde geprobeerd met SUMIF om het totaal te berekenen, maar deze formule werkte in zijn geheel niet.

Wie weet raad? Alvast bedankt! :)
DaFanzondag 3 juni 2012 @ 16:44
Wanneer gaat het fout dan? Paste vanaf dat punt nog eens.
Met SUMIF kan wel;
=SUMIF(A:A;A2;B:B)/COUNTIF(A:A;A2)
Deetchzondag 3 juni 2012 @ 19:34
Je kunt eerst alleen de unieke waarden uit kolom A filteren:
http://www.ozgrid.com/forum/showthread.php?t=40545

Vervolgens plak je deze unieke lijst ergens anders en gebruik de formule die je zelf al had of die van DaFan om allee van deze getallen het gemiddelde van de corresponderende waarden uit B te bepalen.

Mogelijk zijn je identieke ID's toch niet identiek (staat er bijv. nog een spatie achter ofzo?)
mwvrszondag 3 juni 2012 @ 21:38
Bedankt voor de suggesties, mijn gedachtegang was dus wel goed. De formule doet dus wat ik wil.

Ik heb nu dezelfde formule nog een keer gebruikt, alleen nu maar één keer per idee. Dit brengt het aantal berekeningen drastisch terug en nu kan mijn computer/Excel het wel aan.

Ik zal zeker nog checken of sommige id's identiek lijken maar het niet zijn. Dat is een goede suggestie, bedankt.
Groenalsgrasmaandag 4 juni 2012 @ 12:18
Vraagje:

Ik heb een groot excel bestand. Alle kolommen hebben een filter. Mijn excelbestand is gefilterd op mijn klanten. Nu wil ik de klanten van mijn collega ook 'uitklappen'. Maar dan verspringen de regels waar ikzelf opmerkingen achter heb gezet, m.a.w. mijn opmerkingen komen dan achter de verkeerde klanten te staan.

Hoe los ik dit op?

Ik heb Windows 7, Office 2010 in het Nederlands.

Alvast bedankt!
DaFanmaandag 4 juni 2012 @ 12:20
Stel je opmerkingen staan in kolom C. Dan heb je (denk ik) alleen À en B in je filter staan. Dus even je filter eraf halen en opnieuw toevoegen op alle kolommen.
Groenalsgrasmaandag 4 juni 2012 @ 12:38
Zodra ik de filters (staan op alle kolommen) eraf gooi, komen de klanten van mijn collega's ook in de lijst, maar tegelijkertijd blijven mijn opmerkingen aan de verkeerde klant gekoppeld worden...
Deetchmaandag 4 juni 2012 @ 12:54
Volgens mij snap ik wat je bedoelt:

Ik heb kolom A en B in een filter en kolom C niet. Als ik in die kolom C opmerkingen zet en ik ga gegevens filteren (keuzelijstje aanvinken) dan blijven de opmerkingen aan de cellen hangen in kolom A waarop ik heb gefilterd. Idem voor kolom B

Echter!!! als ik ga sorteren op kolom A of B (alfabetische volgorde of klein naar groot) dan worden alleen de kolommen meegenomen waar het filter overheen zit.

De oplossing die bij mij werkt is als volgt:
Kolom ABC selecteren, filter ongedaan maken, filter weer activeren incl kolom C

[ Bericht 22% gewijzigd door Deetch op 04-06-2012 13:01:28 ]
Twentsche_Rosmaandag 4 juni 2012 @ 17:48
Als ik een rij heb in Excel:
Koe
Paard
Hond

(cellen A1 t/m A3)

en die wil ik alle drie in het Engels vertalen. In cellen B1 t/m B3
Dan selecteer ik A1..A3
Ik ga naar Google Translate:

Ctrl-V
In de linker balk krijg ik

Koe
Paard
Hond

netjes onder elkaar

Ik selecteer het rechter blok:

cow
horse
dog

(ook netjes onder elkaar)

Ctrl-C

Ik ga naar cel B1.
en ik krijg ze achter elkaar in cel B1

cow horse dog

Terwijl ik ooit wel de resultaten per cel apart kreeg. Dus B1 t/m B3

cow
horse
dog

Welke instelling moet ik veranderen?


Ik merk dat het niet een instelling betreft die in Excel is veranderd. Het gaat om een instelling in Google. Als ik de woorden in de rechter kolom selecteer, selecteert hij zonder alinea einden. Hoe kan ik dat weer inclusief alinea-einden krijgen?

[ Bericht 15% gewijzigd door Twentsche_Ros op 04-06-2012 18:11:59 ]
Zmaandag 4 juni 2012 @ 18:11
Plakken speciaal?
Twentsche_Rosmaandag 4 juni 2012 @ 18:12
quote:
0s.gif Op maandag 4 juni 2012 18:11 schreef Z het volgende:
Plakken speciaal?
Nee, plakken speciaal geeft 2 opties. Tekst en Unicode tekst en beide geven het resultaat zonder alinea-einden.
Zmaandag 4 juni 2012 @ 18:23
En als je het in notepad plakt, weer kopieert en weer in Excel plakt?
Groenalsgrasmaandag 4 juni 2012 @ 20:49
@Deetch Bedankt voor je reactie, echter, ik heb op alle kolommen een filter staan, incl de opmerkingen. Haal ik alle filters eraf dan is mijn hele bestand gehusseld...

Printscreen kan ik niet plaatsen omdat dit klantgegevens betreffen...
McGillesdinsdag 5 juni 2012 @ 00:02
quote:
0s.gif Op maandag 4 juni 2012 18:12 schreef Twentsche_Ros het volgende:

[..]

Nee, plakken speciaal geeft 2 opties. Tekst en Unicode tekst en beide geven het resultaat zonder alinea-einden.
Plak hem dan nogmaals, dan kan je wel transponeren. Of via de transpose functie, wel ff een array functie van maken dan. Zou ik doen via een macro:

Columns("B:B").Select
Selection.Insert Shift:=xlToRight
Range("C1").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Columns("C:C").Select
Range(Selection, Selection.End(xlToRight)).Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Range("A1").Select
McGillesdinsdag 5 juni 2012 @ 00:07
Ik zit nog met een probleem:

Als ik de optie 'tekst naar kolommen' gebruik gaat alles goed, het doet precies wat het moet doen. Echter, doe ik exact hetzelfde met een macro, dan gooit hij alle data waarbij wanneer je het getal voor de dag en de maand omdraait nog steeds een geldige datum is om.

Bijvoorbeeld 2-10-1985 wordt 10-2-1985
Maar 14-2-1998 blijft 14-2-1998 omdat 2-14-1998 geen geldige datum is.

Wie heeft de oplossing voor dit probleem?
Deetchdinsdag 5 juni 2012 @ 10:52
Dat probleem heb ik ook gehad met een macro. Hier staan een aantal oplossingen

http://www.mrexcel.com/forum/showthread.php?t=73585

Vooral die met DateValue lijkt veelbelovend.
gekkie000000dinsdag 5 juni 2012 @ 16:26
Hallo allemaal ,

Ik heb weer eens een vraagje. Ik heb een nieuwe functie op mijn werk, en onderdeel daarvan is dat ik veel over producten leer.
Iedereen geeft aan dat ik mijzelf de tijd moet gunnen om alles te leren, maar voor mijzelf zou ik het handig vinden om een soort vraag- en antwoord menuutje te hebben.

Ik vind dingen over gegevens – validatie in excel, maar ik wil eigenlijk na vraag 1 weer een nieuwe vraag met antwoord.

Als voorbeeld:

5 producten:

Naam: 1 Afmeting: 20x20 Hoogte: 50 Materiaal : M
Naam: 2 Afmeting: 20x20 Hoogte: 60 Materiaal : M
Naam: 3 Afmeting: 20x20 Hoogte: 80 Materiaal : M
Naam: 4 Afmeting: 30x30 Hoogte: 50 Materiaal : M
Naam: 5 Afmeting: 35x35 Hoogte: 50 Materiaal : G

Als ik dan iets moet opzoeken, of ik ben met een klant aan het bellen zou ik graag een menu hebben waar ik kan aangeven, klant wil die afmeting, dan blijft een x aantal over, klant wil die hoogte, dan blijft een x aantal over, en dat dan uiteindelijk een antwoord komt: naam 1. Is zoiets te maken? En zoja, hoe doe ik dat dan?
qu63dinsdag 5 juni 2012 @ 16:51
quote:
0s.gif Op dinsdag 5 juni 2012 16:26 schreef gekkie000000 het volgende:
Hallo allemaal ,

Ik heb weer eens een vraagje. Ik heb een nieuwe functie op mijn werk, en onderdeel daarvan is dat ik veel over producten leer.
Iedereen geeft aan dat ik mijzelf de tijd moet gunnen om alles te leren, maar voor mijzelf zou ik het handig vinden om een soort vraag- en antwoord menuutje te hebben.

Ik vind dingen over gegevens – validatie in excel, maar ik wil eigenlijk na vraag 1 weer een nieuwe vraag met antwoord.

Als voorbeeld:

5 producten:

Naam: 1 Afmeting: 20x20 Hoogte: 50 Materiaal : M
Naam: 2 Afmeting: 20x20 Hoogte: 60 Materiaal : M
Naam: 3 Afmeting: 20x20 Hoogte: 80 Materiaal : M
Naam: 4 Afmeting: 30x30 Hoogte: 50 Materiaal : M
Naam: 5 Afmeting: 35x35 Hoogte: 50 Materiaal : G

Als ik dan iets moet opzoeken, of ik ben met een klant aan het bellen zou ik graag een menu hebben waar ik kan aangeven, klant wil die afmeting, dan blijft een x aantal over, klant wil die hoogte, dan blijft een x aantal over, en dat dan uiteindelijk een antwoord komt: naam 1. Is zoiets te maken? En zoja, hoe doe ik dat dan?
http://www.contextures.com/xlDataVal02.html

Of google even verder op "excel multiple validation" (en sla de eerste link dan over, die gaf ik je net ;))
chucky1987dinsdag 5 juni 2012 @ 21:55
Hallo allemaal

Ik heb in exel 2007 een simpel rekenen document gemaakt om het werk wat ik moet doen voor mij en ook collega's wat makkelijker te maken. Nu is het alleen zo dat mijn collega's steeds bewust dan wel onbewust dat reken document vernielen waardoor ik steeds weer opnieuw het bestand moet maken. Dat wordt op ten duur knap vervelend ik wil graag en deel van het excel bestand beveiligen tegen bewerken zodat ze niet aan het deel kunnen komen waar exel de formules berekend. Kan ik op tab 1 en deel van deze tab beveiligen tegen bewerken ?. Ik weet wel hoe je de hele tab kan beveiligen tegen bewerken maar dat is dus niet de bedoeling.
qu63dinsdag 5 juni 2012 @ 22:21
quote:
0s.gif Op dinsdag 5 juni 2012 21:55 schreef chucky1987 het volgende:
Hallo allemaal

Ik heb in exel 2007 een simpel rekenen document gemaakt om het werk wat ik moet doen voor mij en ook collega's wat makkelijker te maken. Nu is het alleen zo dat mijn collega's steeds bewust dan wel onbewust dat reken document vernielen waardoor ik steeds weer opnieuw het bestand moet maken. Dat wordt op ten duur knap vervelend ik wil graag en deel van het excel bestand beveiligen tegen bewerken zodat ze niet aan het deel kunnen komen waar exel de formules berekend. Kan ik op tab 1 en deel van deze tab beveiligen tegen bewerken ?. Ik weet wel hoe je de hele tab kan beveiligen tegen bewerken maar dat is dus niet de bedoeling.
http://office.microsoft.c(...)ord-HP010078580.aspx
Deetchwoensdag 6 juni 2012 @ 09:17
quote:
In 2010 in ribbon review eerst de cellen aangeven die de gebruiker mag bewerken.
vervolgens protect sheet (eventueel met password)
_superboer_woensdag 6 juni 2012 @ 13:58
Ik heb van een aantal producten van elke dag de productieaantallen in een rij staan en nu wil ik graag kijken hoeveel tijd er tussen de keren dat er geproduceerd wordt zit.

Voorbeeld:
1
2
3
      Dag       1     2     3     4     5     6     7     8     9     10    11    12    13    14    15
Product A       10    0     5     10    0     0     1     0     0     0     3     4     0     6     0  
Product B       0     0     3     4     6     0     0     0     0     2     1     6     0     0     1

Voor product A wil ik dus als uitkomst krijgen 1;2;3;1;1 en voor product B 2;4;2. Iemand een idee hoe dit kan?
Janneke141woensdag 6 juni 2012 @ 14:10
quote:
0s.gif Op woensdag 6 juni 2012 13:58 schreef _superboer_ het volgende:
Ik heb van een aantal producten van elke dag de productieaantallen in een rij staan en nu wil ik graag kijken hoeveel tijd er tussen de keren dat er geproduceerd wordt zit.

Voorbeeld:
[ code verwijderd ]

Voor product A wil ik dus als uitkomst krijgen 1;2;3;1;1 en voor product B 2;4;2. Iemand een idee hoe dit kan?
Is op zich wel te doen, maar wel bewerkelijk. Ik zie wel een oplossing maar die is weinig charmant. Hoe begrensd is dat aantal productiedagen?
_superboer_woensdag 6 juni 2012 @ 14:13
quote:
0s.gif Op woensdag 6 juni 2012 14:10 schreef Janneke141 het volgende:

[..]

Is op zich wel te doen, maar wel bewerkelijk. Ik zie wel een oplossing maar die is weinig charmant. Hoe begrensd is dat aantal productiedagen?
Dat is vanaf 1-1-2010, exclusief de weekenden en zo'n 250 producten. Ik was nu bezig met voor dag x te kijken of daar geproduceerd wordt, en als dat niet gebeurd dan 1 op te tellen bij het aantal dagen dat op dag x-1 niet geproduceerd was. Om vervolgens te kijken wat of het aantal dagen dat bij x niet geproduceerd is hoger is dan bij x-1, en zo dan steeds de laatste dag van een periode van niet produceren te zoeken. Maar volgens mij is dat nogal omslachtig.
Janneke141woensdag 6 juni 2012 @ 14:29
Dat was ook wel ongeveer de kant waar ik heenwilde. Per produkt heb je twee hulpregels nodig: de eerste doet wat je beschrijft (geeft productiedagen een 0 en nietproductiedagen oplopend 1, 2, 3 etc.)

Op de tweede regel zet je een als-formule die de cel erboven bekijkt, en de celwaarde-en-een-puntkomma geeft als die celwaarde >0 is en de cel er rechts van 0, en anders een lege cel ("").
Vervolgens concat je de hele regel (maar dat kan dus nogal een peut zijn) en je hebt je gevraagde output.

Verzin even hoe je output eruit zou moeten zien en of het bruikbaar is voor wat je ermee wil. In twee en een half jaar kun je zomaar honderd produktieshifts hebben, dat levert niet echt een bruikbaar/overzichtelijk geheel op volgens mij.

[ Bericht 0% gewijzigd door Janneke141 op 06-06-2012 14:40:11 ]
_superboer_woensdag 6 juni 2012 @ 14:51
quote:
0s.gif Op woensdag 6 juni 2012 14:29 schreef Janneke141 het volgende:
Dat was ook wel ongeveer de kant waar ik heenwilde. Per produkt heb je twee hulpregels nodig: de eerste doet wat je beschrijft (geeft productiedagen een 0 en nietproductiedagen oplopend 1, 2, 3 etc.)

Op de tweede regel zet je een als-formule die de cel erboven bekijkt, en de celwaarde-en-een-puntkomma geeft als die celwaarde >0 is en de cel er rechts van 0, en anders een lege cel ("").
Vervolgens concat je de hele regel (maar dat kan dus nogal een peut zijn) en je hebt je gevraagde output.

Verzin even hoe je output eruit zou moeten zien en of het bruikbaar is voor wat je ermee wil. In twee en een half jaar kun je zomaar honderd produktieshifts hebben, dat levert niet echt een bruikbaar/overzichtelijk geheel op volgens mij.
Ik heb het op de beschreven manier gedaan, alleen niet alle waardes in een enkele cel gezet. Met de waardes kon ik kijken hoeveel dagen er gemiddelde tussen de productieshifts zit en de standaardafwijking bepalen. Bedankt voor het meedenken :)
Janneke141woensdag 6 juni 2012 @ 14:53
quote:
0s.gif Op woensdag 6 juni 2012 14:51 schreef _superboer_ het volgende:

[..]

Ik heb het op de beschreven manier gedaan, alleen niet alle waardes in een enkele cel gezet. Met de waardes kon ik kijken hoeveel dagen er gemiddelde tussen de productieshifts zit en de standaardafwijking bepalen. Bedankt voor het meedenken :)
^O^
McGillesdonderdag 7 juni 2012 @ 21:03
quote:
0s.gif Op woensdag 6 juni 2012 14:10 schreef Janneke141 het volgende:

[..]

Is op zich wel te doen, maar wel bewerkelijk. Ik zie wel een oplossing maar die is weinig charmant. Hoe begrensd is dat aantal productiedagen?
Aannemen dat je productielijn in B1 begint:

Plak in B2: =IF(AND(C1>=B1;B1=0);1;0)
Plak in C2: =IF(AND(B2=1;A2=0);MATCH(0;C2:$O$2;0);"")

Slepen en klaar.
McGillesdonderdag 7 juni 2012 @ 21:05
quote:
0s.gif Op dinsdag 5 juni 2012 16:26 schreef gekkie000000 het volgende:
Hallo allemaal ,

Ik heb weer eens een vraagje. Ik heb een nieuwe functie op mijn werk, en onderdeel daarvan is dat ik veel over producten leer.
Iedereen geeft aan dat ik mijzelf de tijd moet gunnen om alles te leren, maar voor mijzelf zou ik het handig vinden om een soort vraag- en antwoord menuutje te hebben.

Ik vind dingen over gegevens – validatie in excel, maar ik wil eigenlijk na vraag 1 weer een nieuwe vraag met antwoord.

Als voorbeeld:

5 producten:

Naam: 1 Afmeting: 20x20 Hoogte: 50 Materiaal : M
Naam: 2 Afmeting: 20x20 Hoogte: 60 Materiaal : M
Naam: 3 Afmeting: 20x20 Hoogte: 80 Materiaal : M
Naam: 4 Afmeting: 30x30 Hoogte: 50 Materiaal : M
Naam: 5 Afmeting: 35x35 Hoogte: 50 Materiaal : G

Als ik dan iets moet opzoeken, of ik ben met een klant aan het bellen zou ik graag een menu hebben waar ik kan aangeven, klant wil die afmeting, dan blijft een x aantal over, klant wil die hoogte, dan blijft een x aantal over, en dat dan uiteindelijk een antwoord komt: naam 1. Is zoiets te maken? En zoja, hoe doe ik dat dan?
Dit is echt voer voor een draaitabel, is echt duidelijk het makkelijkst voor dit soort dingen.
Anders optie is gewoon een filter erop zetten en dan meerdere malen filteren.
McGillesvrijdag 8 juni 2012 @ 13:22
quote:
0s.gif Op dinsdag 5 juni 2012 16:51 schreef qu63 het volgende:

[..]

http://www.contextures.com/xlDataVal02.html

Of google even verder op "excel multiple validation" (en sla de eerste link dan over, die gaf ik je net ;))
Ik neem aan dat het een hele grote lijst is waar hij puur in wil zoeken. Dan zou ik een filter op de kolomkoppen zetten, filter in A op dit, filter in D op dat en in bijvoorbeeld F blijven alleen de producten over die aan die voorwaarden voldoen.

Wat jij zegt is bedoeld voor wanneer je juist een bestand gaat invullen dat aan bepaalde eerder opgegeven voorwaarden moet voldoen. :)
qu63vrijdag 8 juni 2012 @ 13:52
quote:
0s.gif Op vrijdag 8 juni 2012 13:22 schreef McGilles het volgende:

[..]

Ik neem aan dat het een hele grote lijst is waar hij puur in wil zoeken. Dan zou ik een filter op de kolomkoppen zetten, filter in A op dit, filter in D op dat en in bijvoorbeeld F blijven alleen de producten over die aan die voorwaarden voldoen.

Wat jij zegt is bedoeld voor wanneer je juist een bestand gaat invullen dat aan bepaalde eerder opgegeven voorwaarden moet voldoen. :)
Kan ook ja, komt eigenlijk op t zelfde neer :P
Lurtt1vrijdag 8 juni 2012 @ 19:02
Ik had een vraagje:

Stel ik heb 3 cellen (A1, B1 en C1).
Als A1 (vast) en B1 (variabel) gelijk zijn (met een waarde van 65) moet C1 automatisch 30 worden.
Maar als B1 64 of 66 is (verschil van 1) moet C1 10% minder worden
Als B1 63 of 67 (verschil van 2) moet C1 20% minder worden.
etc.

Ik kom er maar niet uit, is dit uberhaupt mogelijk en zo ja: hoe?

Alvast bedankt
DaFanvrijdag 8 juni 2012 @ 19:16
=IF(A1=B1;30;30-(30*(ABS((65-B1))/100)))

Volgens mij doe ik dat laatste omslachtig :{

Deze is iets overzichtelijker:
=IF(A1=B1;30;30*(1-(ABS(65-B1))/100))
Lurtt1vrijdag 8 juni 2012 @ 19:23
Hartelijk dank... is er ook een mogelijkheid om niet negatief te gaan. Dus bij een verschil van meer of minder dan 10 dat het dan altijd 0 blijft?

Wederom, alvast bedankt!
DaFanvrijdag 8 juni 2012 @ 19:28
Ja dat kan natuurlijk maar moet het dan ook wel weer in stappen van 10% gaan?
Geef even een lijstje van 5 waardes eromheen met je gewenste output.
Lurtt1vrijdag 8 juni 2012 @ 19:33
Het is dus zo... Ik heb A1 voorspeld als aantal doelpunten, dat staat vast en is 65. B1 is hetgeen dat het uiteindelijk is, dat is nog onbekend. C1 is het aantal punten (30 max.) dat ik er mee kan verdienen, en per verschil tussen A1 en B1 gaat daar 3 punten (dus 10%) vanaf, met een uiterste van 0.

Ik hoop dat het zo duidelijk is.
DaFanvrijdag 8 juni 2012 @ 19:40
Sorry hij klopte niet, ik had 1%.
Dan moet het gewoon zo toch
=30-(ABS(B1-A1)*3)

Hoef je niet moeilijk te doen met procenten enzo :{ Dat maakt het alleen maar lastiger.
Lurtt1vrijdag 8 juni 2012 @ 19:45
Waarschijnlijk wederom verkeerd uitgelegd, maar ik bedoelde dat de 30 punten een uiterste heeft van 0, niet de 65 voorspelde doelpunten.

Dus C1 kan niet negatief worden, alleen maar 0 tot en met 30 met stappen van 3.
DaFanvrijdag 8 juni 2012 @ 19:53
=IF(30-(ABS(B1-A1)*3)<0;0;30-(ABS(B1-A1)*3))
Lurtt1vrijdag 8 juni 2012 @ 20:05
Thanks, hij doet het!
qu63zondag 10 juni 2012 @ 18:06
Dat je je eigen formules niet meer snapt.. -O-
quote:
=INDEX(INDIRECT("$B$"&3+(AFRONDEN(($A399-$A$364)/30;0)*9)&":$AW$"&9+(AFRONDEN(($A399-$A$364)/30;0))*9);ALS(WEEKDAG($A399;3)+B$363>7;ALS(WEEKDAG($A399;3)+B$363-7>7;ALS(WEEKDAG($A399;3)+B$363-14>7;ALS(WEEKDAG($A399;3)+B$363-21>7;ALS(WEEKDAG($A399;3)+B$363-28>7;ALS(WEEKDAG($A399;3)+B$363-35>7;NB();WEEKDAG($A399;3)+B$363-35);WEEKDAG($A399;3)+B$363-28);WEEKDAG($A399;3)+B$363-21);WEEKDAG($A399;3)+B$363-14);WEEKDAG($A399;3)+B$363-7);WEEKDAG($A399;3)+B$363);ALS(WEEKDAG($A399;2)+B$363>8;ALS(WEEKDAG($A399;2)+B$363-8>8;ALS(WEEKDAG($A399;2)+B$363-16>8;ALS(WEEKDAG($A399;2)+B$363-24>8;ALS(WEEKDAG($A399;2)+B$363-32>8;NB();40);32);24);16);8))
Grmbl :P

-edit-
Nou ja, ik snap em wel, alleen niet waarom bij de 35 maanden er voor wel goed gaat, maar nu ik de sheet met 5 maanden uit wil breiden hij ineens raar doet -O-
Janneke141zondag 10 juni 2012 @ 18:19
Wat is de fout, #VERW? Want dan zal de verwijzing van je INDEX-formule wel buiten de grenzen van de zoekmatrix vallen.
qu63zondag 10 juni 2012 @ 18:58
quote:
0s.gif Op zondag 10 juni 2012 18:19 schreef Janneke141 het volgende:
Wat is de fout, #VERW? Want dan zal de verwijzing van je INDEX-formule wel buiten de grenzen van de zoekmatrix vallen.
Nope, hij verwijst naar een lege cel. En dit is de hele formule, geen extra zoekmatrix dus.
McGillesdinsdag 12 juni 2012 @ 00:43
quote:
10s.gif Op zondag 10 juni 2012 18:06 schreef qu63 het volgende:
Dat je je eigen formules niet meer snapt.. -O-

[..]

Grmbl :P

-edit-
Nou ja, ik snap em wel, alleen niet waarom bij de 35 maanden er voor wel goed gaat, maar nu ik de sheet met 5 maanden uit wil breiden hij ineens raar doet -O-
Waarom een formule met zovaak als( ) erin? Veel te omslachtig en nauwelijks te lezen voor iemand anders. Zou ook wel de fout zijn, aangezien ergens een maximum ligt bij die =als() formule. Doe dit via een zoekfunctie in een matrix, is de lengte ineens 4x zo kort :)
Deetchdinsdag 12 juni 2012 @ 08:14
quote:
0s.gif Op dinsdag 12 juni 2012 00:43 schreef McGilles het volgende:

[..]

Waarom een formule met zovaak als( ) erin? Veel te omslachtig en nauwelijks te lezen voor iemand anders. Zou ook wel de fout zijn, aangezien ergens een maximum ligt bij die =als() formule. Doe dit via een zoekfunctie in een matrix, is de lengte ineens 4x zo kort :)
Laat maar zien dan toch? Wat wil je eigenlijk bereiken met die functie qu63?
qu63dinsdag 12 juni 2012 @ 10:25
quote:
0s.gif Op dinsdag 12 juni 2012 00:43 schreef McGilles het volgende:

[..]

Waarom een formule met zovaak als( ) erin? Veel te omslachtig en nauwelijks te lezen voor iemand anders. Zou ook wel de fout zijn, aangezien ergens een maximum ligt bij die =als() formule. Doe dit via een zoekfunctie in een matrix, is de lengte ineens 4x zo kort :)
Nope, daar komt de fout niet door..
Ik zal kijken of ik de sheet los kan uploaden, moment!
qu63dinsdag 12 juni 2012 @ 10:35
Eigenlijk wordt A1:AZ361 dynamisch gevuld, maar ik heb nu even kopiëren/plakken speciaal/waarden gedaan.

De functie waar t om gaat staat in B364:CH403, maar alleen in B399:CH403 gaat ie fout ;(
Hier te downloaden (in een .rar omdat m'm server .xlsx niet snapt :()
Deetchdinsdag 12 juni 2012 @ 11:15
Als je de functie helemaal uit splitst in delen kom je er sneller achter waar de fout zit. Dus alle ALS() functies even apart nemen en kijken waar dat mis gaat.
qu63dinsdag 12 juni 2012 @ 12:02
quote:
3s.gif Op dinsdag 12 juni 2012 11:15 schreef Deetch het volgende:
Als je de functie helemaal uit splitst in delen kom je er sneller achter waar de fout zit. Dus alle ALS() functies even apart nemen en kijken waar dat mis gaat.
Ik weet ook al precies waar het fout gaat, alleen niet hoe ik het kan fixen zodat ie voor alle maanden werkt. In alle maanden tot en met juli '12 werkt het nog, maar in augustus '12 en verder niet meer.. Ligt waarschijnlijk aan het feit dat er tussen september '09 en augustus '12 34,xxx maand zit, wat afgerond 35 is..
Deetchdinsdag 12 juni 2012 @ 14:00
Ik kan helaas niet downloaden (werk enzo) maar als je toch de maand van een datum moet weten kun je dan niet beter de functie MAAND() gebruiken?

Aantal maanden tussen twee data die meer dan een jaar uit elkaar liggen:
=MONTH(A9)-MONTH(A8)+(YEAR(A9)-YEAR(A8))*12

A9 moet wel altijd later zijn dan A8

[ Bericht 38% gewijzigd door Deetch op 12-06-2012 14:40:47 ]
Holy_Goatdinsdag 12 juni 2012 @ 14:04
quote:
10s.gif Op zondag 10 juni 2012 18:06 schreef qu63 het volgende:
Dat je je eigen formules niet meer snapt.. -O-

[..]

Grmbl :P

-edit-
Nou ja, ik snap em wel, alleen niet waarom bij de 35 maanden er voor wel goed gaat, maar nu ik de sheet met 5 maanden uit wil breiden hij ineens raar doet -O-
je denkt toch niet dat ik ga proberen dat te begrijpen he :P
Ik probeer dat soort lange formules ernstig te vermijden ,omdat ik mijzelf nooit meer ga snappen
Deetchdinsdag 12 juni 2012 @ 14:27
quote:
0s.gif Op dinsdag 12 juni 2012 12:02 schreef qu63 het volgende:

[..]

Ik weet ook al precies waar het fout gaat, alleen niet hoe ik het kan fixen zodat ie voor alle maanden werkt. In alle maanden tot en met juli '12 werkt het nog, maar in augustus '12 en verder niet meer.. Ligt waarschijnlijk aan het feit dat er tussen september '09 en augustus '12 34,xxx maand zit, wat afgerond 35 is..
:? in welk deel van de formule gaat dit dan fout en waarom?

Is het zinvol om eens opnieuw te proberen?
• Wat wil je bereiken met dit monsterlijke gedrocht
• Wat heb je als input?
• Welke foutmelding krijg je?
McGillesdinsdag 12 juni 2012 @ 20:15
quote:
0s.gif Op dinsdag 12 juni 2012 10:35 schreef qu63 het volgende:
Eigenlijk wordt A1:AZ361 dynamisch gevuld, maar ik heb nu even kopiëren/plakken speciaal/waarden gedaan.

De functie waar t om gaat staat in B364:CH403, maar alleen in B399:CH403 gaat ie fout ;(
Hier te downloaden (in een .rar omdat m'm server .xlsx niet snapt :()
Het gaat natuurlijk mis aangezien jij het verschil tussen 2 data deelt door 30 en dan gaat afronden naar 0 decimalen. Deel eens door 30,5 en trek dan de formule door, dan werkt het wel.

Btw: inderdaad een beetje een draakbestand. Het is dat ik lange dagen op werk maak, was ik werkloos dan had ik het bestand wel aangepast en retour gestuurd :)
Meike26dinsdag 12 juni 2012 @ 21:43
Zo, ben weer een beetje onder de mensen, was echt op na 2 dagen training, maar wel erg leuk !

6503a3b4.jpg?t=1339529125

Leuk:

- Opmaak
- Formules bedenken zodat ik met de goede resultaten kom.
- Voorwaardelijke opmaak
- Som.Als
- Andere functies met ALS nog uit zien te vogelen
- Koppelingen, lastig, maar wel interessant
- Fout/brondvermeldingen en fouten oplossen
- Grafieken net niet aan toe gekomen.

Minder leuk
- Je vergeet nog wel eens functies en handigheidjes, zodat je net in opdracht/blad zit te rommelen en er pas op laatst achter komt dat het dus ook anders kon.
- Het bedenken van de formules kan net zoals bij Sudoku's zorgen voor black-outs.. Een paar van gehad :') *lang leve de open leervorm, vragen = gratis*

Ben er erg blij mee en heb opdrachten boek + cd-rom met excel voorbeelden meegekregen om overige opdrachten nog af te maken. De basis is er dus. Als eerst ga ik komende tijd aan de slag met de grafieken ! :s)

Wel een vraagje. Ik heb dus Excel 2010 geleerd en heb nu nog een probeerversie van Excel 2007 die niet meer werkt/verstreken is. Ik heb al van alles geprobeerd om Excel 2010 gratis te downloaden, maar niets helpt !

Heeft iemand Excel 2010 liggen op een schijfje, zodat ik er thuis er mee verder kan ?

Edit: Open Office zojuist gedownload en heeft dus ook een soort van Excel, iemand hier ervaring mee ? Ga morgen ochtend even proberen of ik er uit kom met die andere knoppen, maar lijkt er voor de rest best veel op !

[ Bericht 6% gewijzigd door Meike26 op 12-06-2012 22:19:04 ]
DaFandinsdag 12 juni 2012 @ 22:39
Goed bezig ^O^
Je weet met alle vragen mag je hier terecht :)

Tja Office 2010 is natuurlijk wel te verkrijgen via de minder legale manier. Ik vermoed dat niemand m zomaar heeft liggen, het is een duur pakket.
OpenOffice is vergelijkbaar, zeker in de basale functies, maar is toch geen Excel..
Jesse_dinsdag 12 juni 2012 @ 22:51
quote:
7s.gif Op dinsdag 12 juni 2012 22:39 schreef DaFan het volgende:
Goed bezig ^O^
Je weet met alle vragen mag je hier terecht :)

Tja Office 2010 is natuurlijk wel te verkrijgen via de minder legale manier. Ik vermoed dat niemand m zomaar heeft liggen, het is een duur pakket.
OpenOffice is vergelijkbaar, zeker in de basale functies, maar is toch geen Excel..
Duur pakket?
60 euro heb je al drie licenties toch?
Meike26dinsdag 12 juni 2012 @ 23:08
Ja ben nu al bezig met wat dingetjes om Excel (OpenOffice) nu te gebruiken in een tabel voor de FOK! ormule 1 manager.

Al eerder dit jaar had ik de vraag of het misschien interessant was om te kijken wat de resultaten zouden zijn van mijn team als ik een bepaalde wijziging niet had gemaakt. Dit betekend dus dat ik mijn team, met de naam "Bitterkoek", vanaf elke wijziging laat doorlopen tot het einde van het seizoen. Nu heb ik bijvoorbeeld vandaag in mijn team de motoren van Renault/Lotus ingeruild voor de motoren van Ferrari. Deze wijziging laat ik tot het eind van het jaar doorlopen en kan ik zien of dit wel/niet een goede keus was.

Met deze gegevens wil ik dus als eerst gebruik maken van de Voorwaardelijke Opmaak en van ALS dus als ik ergens een negatieve- of positieve wijziging op heb doorgevoerd ten opzichte van een vorige opstelling, dan kleurt mijn tabel dus rood of groen, of een tekst die hierop reageert.

Aan het einde van het seizoen kan ik uiteindelijk zien welke wijzigingen ik wel/niet had moeten doen en deze kennis hoop ik weer mee te kunnen nemen naar volgend jaar :D
DaFandinsdag 12 juni 2012 @ 23:11
quote:
7s.gif Op dinsdag 12 juni 2012 22:51 schreef Jesse_ het volgende:

[..]

Duur pakket?
60 euro heb je al drie licenties toch?
Ik weet eigenlijk alleen de zakelijke prijzen :P
Dat valt idd wel mee.
Meike26dinsdag 12 juni 2012 @ 23:15
Misschien dat ik dat dan idd wel ga aanschaffen, bedankt, ik zag al van die prijzen voorbij komen, maar dacht eigenlijk dat het te mooi was om waar te zijn.
qu63woensdag 13 juni 2012 @ 00:08
quote:
0s.gif Op dinsdag 12 juni 2012 20:15 schreef McGilles het volgende:

[..]

Het gaat natuurlijk mis aangezien jij het verschil tussen 2 data deelt door 30 en dan gaat afronden naar 0 decimalen. Deel eens door 30,5 en trek dan de formule door, dan werkt het wel.

Btw: inderdaad een beetje een draakbestand. Het is dat ik lange dagen op werk maak, was ik werkloos dan had ik het bestand wel aangepast en retour gestuurd :)
Thanks allen! Het is inderdaad een gedrocht.. Heb het nooit geoptimaliseerd en het bleef maar groeien :D
qu63woensdag 13 juni 2012 @ 00:17
quote:
0s.gif Op dinsdag 12 juni 2012 23:15 schreef Meike26 het volgende:
Misschien dat ik dat dan idd wel ga aanschaffen, bedankt, ik zag al van die prijzen voorbij komen, maar dacht eigenlijk dat het te mooi was om waar te zijn.
Als je Microsoft SkyDrive gebruikt kan je ook gebruik maken van gratis Office Online als ik t goed heb! Dat biedt nagenoeg dezelfde functionaliteit van Office 2010 geloof ik..
qu63woensdag 13 juni 2012 @ 00:26
quote:
3s.gif Op dinsdag 12 juni 2012 14:27 schreef Deetch het volgende:

[..]

:? in welk deel van de formule gaat dit dan fout en waarom?

Is het zinvol om eens opnieuw te proberen?
• Wat wil je bereiken met dit monsterlijke gedrocht
• Wat heb je als input?
• Welke foutmelding krijg je?
• Wat ik wil bereiken:
Al die gekleurde blokjes halen hun data uit andere sheets en staan voor de 6 verschillende onderdelen van mijn studie. Alle onderdelen hebben een looptijd in maanden. In de praktijk komt het er op neer dat 1 dag werk = 1 maand, maar 5 weken werk is ook 1 maand.

Aangezien er per studiepunt 28 uur gewerkt moet worden kan ik terugrekenen hoe lang ik per dag, per onderdeel aan mijn studie zou moeten zitten. Op 1 september 2009 dus 2 uur en 12 minuten aan onderdeel oranje (projecten). Als ik A1 aanpas naar 2010 verandert de hele sheet, omdat de maandindeling dynamisch gedaan wordt.

Dit gebeurt dus allemaal in A2:AZ360.

Op regel 363 staan alle 31 dagen van de maand.
Vanaf 364 wordt alles weer dynamisch gevuld en wordt er in B364 (en verder) gekeken naar het totaal aantal uren en minuten dat ik die dag aan m'n studie zou moeten besteden volgens mijn planning.

De planning per week beslaat 9 rijen:
quote:
Maand
Maandag
Dinsdag
Woensdag
Donderdag
Vrijdag
Zaterdag
Zondag
Totaal
Alleen begint niet iedere maand op een maandag, vandaar de ingewikkelde zoekfunctie. Die stelt eerst vast in welke maand er gezocht moet worden, daarna gaat ie op zoek naar de totalen. En dat ziet er dus ingewikkeld uit..

• Input komt dus vanuit een andere planning, deze gegevens kloppen. Die formule ziet er zo uit (voor C4):
quote:
=ALS(B4="";"";ALS(HORIZ.ZOEKEN($A$2;Projecten!$J$1:$AW$18;18;ONWAAR)/DAG(DATUM(JAAR($A$2);MAAND($A$2)+1;1)-1)=0;"";HORIZ.ZOEKEN($A$2;Projecten!$J$1:$AW$18;18;ONWAAR)/DAG(DATUM(JAAR($A$2);MAAND($A$2)+1;1)-1)))
In B4 staat dit:
quote:
=ALS(B3="";ALS(WEEKDAG($A$2;2)=2;1;"");ALS(B3+1<=DAG(DATUM(JAAR($A$2);MAAND($A$2)+1;1)-1);B3+1;""))
Die kijk dus welke dagnummer er bij de dag hoort.

Terug naar de vorige formule:
-Eerste is gewoon een simpele check of de dag + datum aanwezig zijn. Maandag 1 sept 2009 bestaat niet, dus die is leeg. Dinsdag 1 september wel, dus daar wordt de functie wel uitgevoerd.
-Daarna gaat ie op zoek naar de maand + jaar uit A2 in het tabblad projecten om in de 18e rij te kijken naar hoeveel punten ik die maand denk te halen voor het onderdeel projecten.
-Als ik dat getal deel door het aantal dagen in de maand en de uitkomst is 0 dan blijft de cel leeg, anders wordt dat de uitkomst van de formule.

• Welke foutmelding krijg ik:
Ik krijg dus geen foutmelding.. De formule doet wat ie moet doen, alleen krijg ik daarme dus niet de gewenste uitkomst :P

Ik deel nu, zoals een paar posts terug geopperd werd, door 30,5 ipv 30 en daarmee lijkt het probleem verholpen, alleen zijn er nu heel veel maanden met 31 dagen, dus daar klopt ook nog iets niet. Maar dat is voor morgen, nu eerst slapen ;)

[ Bericht 15% gewijzigd door qu63 op 13-06-2012 00:40:51 ]
xaban06woensdag 13 juni 2012 @ 04:02
Ik heb in de velden B2, C2, D2 t/m AF2 de waarde 00:00 staan, soms wordt het vervangen met bijvoorbeeld 00:10. Ik wil een opsomming hebben van hoeveel van deze velden de waarde 00:00 niet bevat.

Engelse Excel 2007.
McGilleswoensdag 13 juni 2012 @ 07:03
quote:
0s.gif Op woensdag 13 juni 2012 04:02 schreef xaban06 het volgende:
Ik heb in de velden B2, C2, D2 t/m AF2 de waarde 00:00 staan, soms wordt het vervangen met bijvoorbeeld 00:10. Ik wil een opsomming hebben van hoeveel van deze velden de waarde 00:00 niet bevat.

Engelse Excel 2007.
=COUNT(<range>)-COUNTIF(<range>;<criteria>)
draadstaligwoensdag 13 juni 2012 @ 11:08
Ik ben een planning aan het maken in Excel. Nu komen er verschillende personen in deze planning voor, maar ik wil een soort van drop-down bovenin maken, zodat de medewerker zijn naam kan aanklikken en direct ziet welke activiteiten hij wanneer af moet hebben. Ik weet dat het kan, maar weet alleen niet meer hoe..?
Deetchwoensdag 13 juni 2012 @ 11:24
quote:
0s.gif Op woensdag 13 juni 2012 07:03 schreef McGilles het volgende:

[..]

=COUNT(<range>)-COUNTIF(<range>;<criteria>)
Of gewoon: =COUNTIF(B2:AF2;"<>00:00")

Let op ook als er 0 staat telt deze als 00:00. Een lege cel wordt wel als NIET 00:00 getelt.
Deetchwoensdag 13 juni 2012 @ 11:25
quote:
0s.gif Op woensdag 13 juni 2012 11:08 schreef draadstalig het volgende:
Ik ben een planning aan het maken in Excel. Nu komen er verschillende personen in deze planning voor, maar ik wil een soort van drop-down bovenin maken, zodat de medewerker zijn naam kan aanklikken en direct ziet welke activiteiten hij wanneer af moet hebben. Ik weet dat het kan, maar weet alleen niet meer hoe..?
Typ in de excel help het volgende in: "drop down list" of indien NL "keuzelijst"
draadstaligwoensdag 13 juni 2012 @ 11:43
Geeft niet het gewenste resultaat. Ik heb nu een drop down gemaakt met de verschillende namen. Dus dat is opzich een stap in de goede richting, echter wil ik nu dat bij die naam de goede activiteiten laat zien en dus niet de totale planning. Ook google biedt tot nu toe geen hulp..
qu63woensdag 13 juni 2012 @ 11:45
quote:
0s.gif Op woensdag 13 juni 2012 11:43 schreef draadstalig het volgende:
Geeft niet het gewenste resultaat. Ik heb nu een drop down gemaakt met de verschillende namen. Dus dat is opzich een stap in de goede richting, echter wil ik nu dat bij die naam de goede activiteiten laat zien en dus niet de totale planning. Ook google biedt tot nu toe geen hulp..
Dan kom je dus uit op als()-functies..
Bijvoorbeeld:
=ALS(A1="draadstalig";item 1 in de lijst voor draadstalig;ALS(A1="Deetch";item 1 in de lijst voor Deetch;ALS(A1="qu63";item 1 in de lijst voor qu63;"oeps, naam komt niet in de lijst voor!")))
Dit gaat alleen niet werken als je veel namen hebt..
draadstaligwoensdag 13 juni 2012 @ 12:18
quote:
0s.gif Op woensdag 13 juni 2012 11:45 schreef qu63 het volgende:

[..]

Dan kom je dus uit op als()-functies..
Bijvoorbeeld:
=ALS(A1="draadstalig";item 1 in de lijst voor draadstalig;ALS(A1="Deetch";item 1 in de lijst voor Deetch;ALS(A1="qu63";item 1 in de lijst voor qu63;"oeps, naam komt niet in de lijst voor!")))
Dit gaat alleen niet werken als je veel namen hebt..
Nee lukt me niet. Wellicht wil ik te ingewikkeld doen hoor. Hierbij even het bestand, misschien kan het gewoon niet wat ik wil (of voor de echte experts onder ons)

http://speedy.sh/prV5c/planning-v3-1.xlsx (bovenin klikken voor downloaden
Meike26woensdag 13 juni 2012 @ 12:48
Eehm, even met mijn bijdehante beginners-kennis: Dat kan je toch simpel met filter doen ?

Heb hier gister een hele oefening over zit te maken met een rooster voor scheidsrechters, welke sportvelden en welke tijden ze waar/wat moesten fluiten.
draadstaligwoensdag 13 juni 2012 @ 12:56
quote:
0s.gif Op woensdag 13 juni 2012 12:48 schreef Meike26 het volgende:
Eehm, even met mijn bijdehante beginners-kennis: Dat kan je toch simpel met filter doen ?

Heb hier gister een hele oefening over zit te maken met een rooster voor scheidsrechters, welke sportvelden en welke tijden ze waar/wat moesten fluiten.
Absoluut! Dat kan zeker en had ik in eerste instantie ook. Echter vind ik dit:
1. geen porum. 2. ik wil het zo makkelijk mogelijk maken voor de mensen die de planning gaan gebruiken en het word op deze manier een stuk onoverzichtelijker
Meike26woensdag 13 juni 2012 @ 13:04
Kan ik mij voorstellen, ik vond die pijltjes ook al zo godsgruwelijk lelijk :D

Lag het toch niet aan mij
snabbiwoensdag 13 juni 2012 @ 14:28
Nog even los van hoe we het technisch verwerken, heb je al nagedacht over hoe Excel moet bepalen welke regel aan welke medewerker getoond moet worden? Je zal iets aan achtergrondgegevens moeten opslaan zoals een naam van de medewerker of per regel iets verwerken rondom de afdeling.

Filteren is inderdaad een goede optie Meike ^O^ . We kunnen dit ook gebruikersvriendelijk maken via die keuze menu's (of aan de hand van je windows inlognaam) en een macro.
DaFanwoensdag 13 juni 2012 @ 14:41
Beter maak je een sheet per medewerker en laat je Excel naar die sheet springen als iemand die dropdown wijzigt en iemand kiest.
Deetchwoensdag 13 juni 2012 @ 15:16
Kan de spreadsheet niet downloaden (werk enzo) maar ik help ongezien nog ff een stukje:

Op blad 2 doe je de gehele planning waarbij de naam van de collega in kolom A staat.

Vervolgens doe je op blad 1 het dropdown menu met de namen van alle collega's en met Vlookup (help gebruiken) kun je dan de gewenste items uit de hoofdlijst halen van blad 2.

Stel de lijst met al je collega's staat op L2:L20 op blad 2
Stel de planning staat op blad 2 A1:F8

Op blad 1 cel A1 maak je dus een drop down menu met de lijst collega's:
Data validation, list, selecteer Blad2, L2:L20

In een andere cel op blad 1 kun je dan de waarde opzoeken die bij deze collega hoort en in de planning op blad 2 staat. Bijvoorbeeld de 3e waarde die achter de naam staat (dus kolom D)
=VLOOKUP(A1,blad2!A1:F8,4,FALSE)
De 4 betekent de vierde kolom in de range A1:F8

Als de gekozen collega nu niet in de planning staat krijg je een foutmelding #N/A. Deze ondervang je door bovenstaande formule iets aan te passen:
=IFERROR(VLOOKUP(A1,blad2!A1:F11,4,FALSE),"Staat niet in planning")
xyntarsusdonderdag 14 juni 2012 @ 09:51
Ik heb een vraag over het maken van optellingen in excel
(versie 2003).

Voor het maken van een voorraad beheer systeem wil ik een aantal tabbladen maken
waar per project de aantallen artikelen op staan.
Vervolgens wil ik op mijn voorblad een optelling maken van de achterliggende cellen, bijvoorbeeld
voorblad!A1 is dan alle cellen A1 opgeteld.
Ook wil ik bladen kunnen toevoegen die hij dan automatisch meeneemt, zonder dat ik in de formule de betreffende cel A1 moet toevoegen.

Heel simplistisch denk ik aan een formule die iets zegt van:
=som(alle cellen A1, behalve die waar ik nu in sta)

is zoiets mogelijk, of te programmeren?
snabbidonderdag 14 juni 2012 @ 10:02
=SOM(Blad2:Blad4!A1)

Dit berekent de som van alle cellen A1 tussen Blad2 en Blad4. Hij kijkt hier niet naar de naam van het tabblad maar naar de positie. Hij telt in dit geval dus van het meest linkertabblad Blad2 tot het meest rechter tabblad Blad4. Wanneer je een nieuw tabblad aanmaakt (Blad5) en dit tussen Blad3 en Blad4 in zet, dan zal dit ook meedoen in je telling.

Wanneer je niet wilt typen, hou je shift toets ingedrukt terwijl je op de meest rechter klikt en alle tussenliggende bladen worden hiermee ook geselecteerd.
xyntarsusdonderdag 14 juni 2012 @ 10:31
super, dit is precies het antwoord dat ik zocht :)

dan zou ik met een macro kunnen zorgen dat mensen een nieuw blad maken dat niet het laatste is
snabbidonderdag 14 juni 2012 @ 12:01
Sheets("SHEETNAAM").Move After:=Sheets(Sheets.Count)
:P
Dan boeit het niet wat ze toevoegen, je laatste sheet is altijd dezelfde.
Meike26donderdag 14 juni 2012 @ 17:12
Vraagje,

In het bestand wat ik nu aan het maken ben wil ik dus over het complete F1 seizoen kijken hoe ik het gedaan heb in de F1 manager. Zo wil ik met de tijd steeds meer functies in dit bestand opnemen/uitproberen.

Op blad 2 heb ik nu de puntentelling staan zoals deze ook precies in de manager te vinden is:

http://managers.fok.nl/f1/f1-2012/puntentelling

Hierbij hebben de verschillende onderdelen en kwalificatie/race hun eigen cellen. Op deze manier wil ik in de tabellen op blad 1 een formule maken waarbij ik simpel per onderdeel de positie in kan voeren en dat dit getal verwijst naar het bijbehorende getal op blad 2.

Ik moet dus met koppelingen gaan werken en met een logische test. Waarbij bijvoorbeeld bij coureurs de positie 5 in de kwalificatie verwijst naar bijvoorbeeld cel G8 en positie 5 (59 punten) in de race is cel H8 (94 punten) en dus automatisch bij het invullen van een positie veranderd in het juiste punten aantal.

Hoe kan ik een Excel bestand online krijgen ? Photobucket ? Dan kan ik het jullie laten zien.

NOTE: Ik hoef niet direct de oplossing, maar wil wel graag advies wat ik moet doen. Maar het mag altijd natuurlijk ;)

De strafpunten laat ik nu nog even achterwege en vul ik handmatig in.
DaFandonderdag 14 juni 2012 @ 17:52
Klinkt als VERT.ZOEKEN
Succes!
snabbidonderdag 14 juni 2012 @ 18:00
De tip voor vertikaal zoeken (VERT.ZOEKEN of in het Engels VLOOKUP) lijkt me de juiste tip
quote:
0s.gif Op donderdag 14 juni 2012 17:12 schreef Meike26 het volgende:
Hoe kan ik een Excel bestand online krijgen ? Photobucket ? Dan kan ik het jullie laten zien.
Gebruik bijvoorbeeld een site zoals www.mijnbestand.nl
Plaats de link vervolgens hier.
Meike26donderdag 14 juni 2012 @ 18:09
Wat houdt deze functie precies in ? Nog niet gehad :@

De cursus die ik dus gedaan heb gaat er om dat ik Excel in de basis kan beheren, maar nog niet alle functies onder de knie heb. Moet dus nog een hoofdstukje of 3 afwerken. Als de cursus 3 dagen was, dan had ik hem wel af gekregen en ik zit nu dus te rommelen met OpenOffice werkblad.
snabbidonderdag 14 juni 2012 @ 20:30
De functie vertikaal zoeken gebruik je wanneer je gegevens uit een tabel moet zoeken en weergeven.

Excel zoekt voor jou in de meest linker kolom van de tabel naar de eerste regel die voldoet aan jouw zoekopdracht. Vervolgens geeft Excel de door jou aangegeven kolom terug van die regel. De formule moet je als volgt gebruiken:
vert.zoeken(<zoekwaarde>; <tabel>; <de hoeveelste kolom in de tabel die moet worden weergegeven>; <WAAR of ONWAAR, waarbij ONWAAR betekent dat hij alleen resultaat moet geven bij een exacte match en bij WAAR maakt hij een benadering van de dichtsbijzijnde waarde).

Zie mijn bijgevoegde voorbeeld:
http://www.mijnbestand.nl/Bestand-3A4OQTP446R7.xls
Meike26donderdag 14 juni 2012 @ 22:08
Helemaal top !! Ga er morgenochtend weer mee aan de slag !
McGillesvrijdag 15 juni 2012 @ 01:40
quote:
0s.gif Op woensdag 13 juni 2012 11:43 schreef draadstalig het volgende:
Geeft niet het gewenste resultaat. Ik heb nu een drop down gemaakt met de verschillende namen. Dus dat is opzich een stap in de goede richting, echter wil ik nu dat bij die naam de goede activiteiten laat zien en dus niet de totale planning. Ook google biedt tot nu toe geen hulp..
Stappenplan:
- Zet je medewerkers in kolom A en noem deze "Medewerkers".
- Zet in cel B1, C1, D1, E1 etc de medewerkers en eronder de activiteiten die erbij horen.
- Noem elke keer de tweede cel (B2, C2, D2, E2 etc) de soort activiteit en de bijbehorende kolom de naam van de activiteit+kolom. Dus bijvoorbeeld B2 heet "sport" en B:B heet "sportkolom"
- Maak ergens een dropmenu van 2 kolommen breed
- De eerste kolom gebruik je =Medewerkers
- De eerste cel hier noem ik even voor het gemak X
- De tweede kolom gebruik je de functie =OFFSET(INDIRECT(X);0;0;COUNTA(INDIRECT(X&"Kolom"))-1;1)

Klaar is kees.
coffeebiscuit1zaterdag 16 juni 2012 @ 00:48
Pfoe hier kom ik echt niet uit:

Ik zou heel graag iets willen bereiken in de onderstaande sheet... Het betreft hier een netto contante waarde methode, echter ik gebruik hem een beetje andersom.

Normaal is C5 een waarde waarmee je berekent hoe lang de terugverdien tijd is. Dus wanneer in kolom L de waarde positief wordt bij een bepaalde waarde van C5 (en de andere factoren in de linker kolommen). In dit jaar is zijn de onkosten dan terug verdiend.

Nu zou ik het graag anders willen hebben en namelijk willen weten bij welke waarde van C5, er na twintig jaar de waarde 0 is. Met andere woorden, bij welke waarde van C5 is L23 = 0

Nu is het lastige dat C5 zelf ook onderdeel is van de formule waaraan L23 wordt berekend. Handmatig kan ik wel deze "C5 geeft L23 = 0" waarde bepalen aan de hand van trial & error. Maar ik hoop dat hier ook een functie voor is in excel.

jOlOf.jpg

Alvast bedankt!!!
snabbizaterdag 16 juni 2012 @ 01:08
Onder het menu Gegevens heeft Excel de 'Wat-als'-analyse. Kies hier voor Doelzoeken.
Kies voor Cel Instellen L23
Kies voor Op Waarde 0
Kies voor Door wijzigen van Cel op C5

Mocht het niet helemaal werken, weet ik zeker dat je via de Help functie op Doelzoeker voldoende info kunt vinden om hem wel werkend te krijgen.
coffeebiscuit1zaterdag 16 juni 2012 @ 01:37
quote:
0s.gif Op zaterdag 16 juni 2012 01:08 schreef snabbi het volgende:
Onder het menu Gegevens heeft Excel de 'Wat-als'-analyse. Kies hier voor Doelzoeken.
Kies voor Cel Instellen L23
Kies voor Op Waarde 0
Kies voor Door wijzigen van Cel op C5

Mocht het niet helemaal werken, weet ik zeker dat je via de Help functie op Doelzoeker voldoende info kunt vinden om hem wel werkend te krijgen.
Thanks snabbi, dit is inderdaad de automatische functie voor wat ik tot nu toe handmatig heb gedaan. Echter.. Middels dit rekent hij het maar 1-malig uit.

Graag zou ik voor C5 een formule ingeven, zodat deze cel altijd naar de waarde zoekt waarbij L23=0. Ook wanneer ik een van de andere factoren zou aanpassen. Ik heb dit nodig omdat ik in een andere tab naar deze cel wil verwijzen en het dus graag geautomatiseerd wil zien.

Ik heb het geprobeerd door middel van de =BET( formule, maar hier kreeg ik errors mee. Kringverwijzing ... Wat natuurlijk komt omdat de cel C5 zelf ook onderdeel is van de formule...

Via de helpfunctie ben ik er nu na een half uur helaas nog niet achter :(

Kortom, een in te voeren formule, voor wat middels jou manier direct wordt berekend.
Outlinedzaterdag 16 juni 2012 @ 01:59
quote:
5s.gif Op zaterdag 16 juni 2012 00:48 schreef coffeebiscuit1 het volgende:
Pfoe hier kom ik echt niet uit:

Ik zou heel graag iets willen bereiken in de onderstaande sheet... Het betreft hier een netto contante waarde methode, echter ik gebruik hem een beetje andersom.

Normaal is C5 een waarde waarmee je berekent hoe lang de terugverdien tijd is. Dus wanneer in kolom L de waarde positief wordt bij een bepaalde waarde van C5 (en de andere factoren in de linker kolommen). In dit jaar is zijn de onkosten dan terug verdiend.

Nu zou ik het graag anders willen hebben en namelijk willen weten bij welke waarde van C5, er na twintig jaar de waarde 0 is. Met andere woorden, bij welke waarde van C5 is L23 = 0

Nu is het lastige dat C5 zelf ook onderdeel is van de formule waaraan L23 wordt berekend. Handmatig kan ik wel deze "C5 geeft L23 = 0" waarde bepalen aan de hand van trial & error. Maar ik hoop dat hier ook een functie voor is in excel.

[ afbeelding ]

Alvast bedankt!!!
ik denk niet dat zoiets mogelijk is in Excel, zelfs als je visual basic in gaat zetten wordt het lastig denk ik.

als ik het goed begrepen heb komt het samengevat op het volgende neer toch?:
normaal werkt excel zo: waarde cel -> wordt gebruikt -> andere cel geeft output

jij wilt nu: vind waarde cel bij output van andere cel == 0??????

[ Bericht 3% gewijzigd door Outlined op 16-06-2012 02:05:51 ]
snabbizaterdag 16 juni 2012 @ 02:08
quote:
0s.gif Op zaterdag 16 juni 2012 01:37 schreef coffeebiscuit1 het volgende:

[..]

Thanks snabbi, dit is inderdaad de automatische functie voor wat ik tot nu toe handmatig heb gedaan. Echter.. Middels dit rekent hij het maar 1-malig uit.

Graag zou ik voor C5 een formule ingeven, zodat deze cel altijd naar de waarde zoekt waarbij L23=0. Ook wanneer ik een van de andere factoren zou aanpassen. Ik heb dit nodig omdat ik in een andere tab naar deze cel wil verwijzen en het dus graag geautomatiseerd wil zien.

Ik heb het geprobeerd door middel van de =BET( formule, maar hier kreeg ik errors mee. Kringverwijzing ... Wat natuurlijk komt omdat de cel C5 zelf ook onderdeel is van de formule...

Via de helpfunctie ben ik er nu na een half uur helaas nog niet achter :(

Kortom, een in te voeren formule, voor wat middels jou manier direct wordt berekend.
Aangezien je een formule hebt met één onbekende is het in mijn ogen absoluut mogelijk de formule om te keren. Dat zal je wat uitschrijf-tijd kosten. Ik ben eigenlijk te lui om precies je formule na te bootsen wat je nu hebt gemaakt, want ik zag niet 1-2-3 wat je nu precies hebt gedaan om de huuropbrengst te verhogen. Ik wil er best nog een keer een blik op werpen, wanneer je dit tabblad upload naar bijvoorbeeld www.mijnbestand.nl en hier het linkje plaatst. Dat voorkomt dat wij het (foutief) nabouwen.

Een goede andere oplossing voor een automatiseringsslag is het gebruik van een Macro. Bij het wijzigen van de factoren in de kolom C (met uitzondering van regel 5) moet er een nieuwe Doelzoeker worden gestart.

Toets ALT F11 om de Visual Basic editor te openen en klik in het linker menu op de naam van het tabblad waar dit allemaal in staat. Voeg daar de volgende code aan toe:
1
2
3
4
5
6
7
Private Sub Worksheet_Change(ByVal Target As Range)
'Target column = 3 is de C kolom en row 5 komt dus uit op Alle wijzigingen in kolom C behalve C5.
If Target.Column = 3 And Target.Row <> 5 Then
'Voer vervolgens de doelzoeken uit zoals genoemd.
Range("L23").GoalSeek Goal:=0, ChangingCell:=Range("C5")
End If
End Sub

Hij zal nu automatisch je doelzoeker starten bij het wijzigen van je factoren.
coffeebiscuit1zaterdag 16 juni 2012 @ 10:33
Thanks!

De oplossing van snabbi komt al heel dicht in de buurt en kan ik ook verder mee.

Wanneer de waardes in kolom C veranderen, veranders inderdaad C5 nu ook mee.

Helaas moet ik dan wel die waardes letterlijk in deze sheet aanpassen.. De waardes in kolom C kunnen dus geen doorverwijzing zijn van een andere cel. Anders merkt ie niet op dat (een van de) de waarde(s) is aangepast. En voert hij de doelzoeken dus niet opnieuw uit in C5.

Tenzij hier een hele makkelijke oplossing voor is, zal ik jullie niet meer storen en kan ik hier ook prima mee aan de slag! Nogmaals bedankt! ;)
snabbizaterdag 16 juni 2012 @ 11:08
Je 'stoort' me niet hoor :)
Eigenlijk kan je de Macro zelf aanpassen om het zo te laten werken als je zelf wilt. Als je maar weet welke cel je parameter bevat voor een wijziging. Ik heb nu de hele C kolom gedaan behalve C5 (om te voorkomen dat ie in een loop gaat raken) maar je kan hem zo ver uitbreiden als je zelf wilt.

<> geeft hier aan ongelijk aan.

If (Target.Column = 3 And Target.Row <> 5) OR (Target.Column = 2 and Target.Row = 3) THEN
dat laatste gedeelte voegt nu ook B3 toe. Zo kan je in feite alle cellen op dit tabblad bereiken. Ook wanneer je naar andere tabbladen gaat kan het maar dan moet je de code van die betreffende sheet pakken en bijvoorbeeld zo aanpassen:
Sheets("Blad1").Range("L23").GoalSeek Goal:=0, ChangingCell:=Sheets("Blad1").Range("C5")

(let op dat er nu 2 keer de sheetnaam genoemd wordt van de plek waar deze cel zich bevindt. Je kan natuurlijk ook hebben dat je parameter op een andere sheet staat dan je resultaat, maar dat lukt je vast wel om aan te passen.)

(Uiteraard kan je ook dat hele IF er uit slopen zodat hij het bij elke cel doet :P )

[ Bericht 7% gewijzigd door snabbi op 16-06-2012 11:17:32 ]
coffeebiscuit1zaterdag 16 juni 2012 @ 12:12
quote:
0s.gif Op zaterdag 16 juni 2012 11:08 schreef snabbi het volgende:
Je 'stoort' me niet hoor :)
Eigenlijk kan je de Macro zelf aanpassen om het zo te laten werken als je zelf wilt. Als je maar weet welke cel je parameter bevat voor een wijziging. Ik heb nu de hele C kolom gedaan behalve C5 (om te voorkomen dat ie in een loop gaat raken) maar je kan hem zo ver uitbreiden als je zelf wilt.

<> geeft hier aan ongelijk aan.

If (Target.Column = 3 And Target.Row <> 5) OR (Target.Column = 2 and Target.Row = 3) THEN
dat laatste gedeelte voegt nu ook B3 toe. Zo kan je in feite alle cellen op dit tabblad bereiken. Ook wanneer je naar andere tabbladen gaat kan het maar dan moet je de code van die betreffende sheet pakken en bijvoorbeeld zo aanpassen:
Sheets("Blad1").Range("L23").GoalSeek Goal:=0, ChangingCell:=Sheets("Blad1").Range("C5")

(let op dat er nu 2 keer de sheetnaam genoemd wordt van de plek waar deze cel zich bevindt. Je kan natuurlijk ook hebben dat je parameter op een andere sheet staat dan je resultaat, maar dat lukt je vast wel om aan te passen.)

(Uiteraard kan je ook dat hele IF er uit slopen zodat hij het bij elke cel doet :P )
Pfff ik voel me echt een excel amateur inmiddels. (in VBA had ik tot nu toe ook nog nooit gewerkt)

Het lukt me niet om hem in ook te laten controleren of 1 cel in een andere tab ook gewijzigd wordt.. zodat ie de goalseek opnieuw uitvoert. Het betreft Cel C6 in tab "financiele haalbaarheid"... Ik had het volgende in elkaar geknutseld.. maar dat blijkt niet te werken. Dus je zal het toch even voor moeten kauwen vrees ik :)

1
2
3
4
5
6
7
Private Sub Worksheet_Change(ByVal Target As Range)
'Target column = 3 is de C kolom en row 5 komt dus uit op Alle wijzigingen in kolom C behalve C5.
If (Target.Column = 3 And Target.Row <> 12) Or (Sheets("financiele haalbaarheid").Target.Column = 5 And Target.Row = 6) Then
'Voer vervolgens de doelzoeken uit zoals genoemd.
Range("L23").GoalSeek Goal:=0, ChangingCell:=Range("C12")
End If
End Sub
McGilleszaterdag 16 juni 2012 @ 12:50
quote:
5s.gif Op zaterdag 16 juni 2012 00:48 schreef coffeebiscuit1 het volgende:
Pfoe hier kom ik echt niet uit:

Ik zou heel graag iets willen bereiken in de onderstaande sheet... Het betreft hier een netto contante waarde methode, echter ik gebruik hem een beetje andersom.

Normaal is C5 een waarde waarmee je berekent hoe lang de terugverdien tijd is. Dus wanneer in kolom L de waarde positief wordt bij een bepaalde waarde van C5 (en de andere factoren in de linker kolommen). In dit jaar is zijn de onkosten dan terug verdiend.

Nu zou ik het graag anders willen hebben en namelijk willen weten bij welke waarde van C5, er na twintig jaar de waarde 0 is. Met andere woorden, bij welke waarde van C5 is L23 = 0

Nu is het lastige dat C5 zelf ook onderdeel is van de formule waaraan L23 wordt berekend. Handmatig kan ik wel deze "C5 geeft L23 = 0" waarde bepalen aan de hand van trial & error. Maar ik hoop dat hier ook een functie voor is in excel.

[ afbeelding ]

Alvast bedankt!!!
Ik zou snel stoppen met dat macro gedoe. Als je even de sheet opstuurt (upload) of vertelt hoe de formules zijn opgebouwd dan maak ik het dit weekend wel even in orde voor je met 1 simpele formule.
snabbizaterdag 16 juni 2012 @ 13:20
Via een formule is het ook zeker op te lossen, zoals ik al zei het is maar één onbekende dus het moet best anders kunnen.

Voor wat betreft je macro. Hij doet het niet omdat Excel deze code niet over 2 verschillende tabbladen kan maken. Je krijgt dus in het tabblad (aan de linker kant aanklikken) genaamd financiele haalbaarheid de code:
1
2
3
4
5
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 5 And Target.Row = 6 Then
 Sheets("Naam van je andere werkblad").Range("L23").GoalSeek Goal:=0, ChangingCell:=Sheets("Naam van je andere werkblad").Range("C12")
End If
End Sub
Daarnaast heb je dan nog de code in je oude tabblad zoals die eerder gemeld stond.

Macro's is wat mij betreft geen Excel maar gewoon programmeren, dus dat hoort er zeker niet bij. Alleen het doelzoeken en dergelijke is wel een mooie functie van Excel zelf.
coffeebiscuit1zaterdag 16 juni 2012 @ 13:34
quote:
0s.gif Op zaterdag 16 juni 2012 12:50 schreef McGilles het volgende:

[..]

Ik zou snel stoppen met dat macro gedoe. Als je even de sheet opstuurt (upload) of vertelt hoe de formules zijn opgebouwd dan maak ik het dit weekend wel even in orde voor je met 1 simpele formule.
Ik was net bezig met uploaden en begeleidend tekstje schrijven, maar gelukkig kwam snabbi net op tijd met de uitkomst. Toch bedankt voor je aanbod ;)

quote:
0s.gif Op zaterdag 16 juni 2012 13:20 schreef snabbi het volgende:
Via een formule is het ook zeker op te lossen, zoals ik al zei het is maar één onbekende dus het moet best anders kunnen.

Voor wat betreft je macro. Hij doet het niet omdat Excel deze code niet over 2 verschillende tabbladen kan maken. Je krijgt dus in het tabblad (aan de linker kant aanklikken) genaamd financiele haalbaarheid de code:
[ code verwijderd ]

Daarnaast heb je dan nog de code in je oude tabblad zoals die eerder gemeld stond.

Macro's is wat mij betreft geen Excel maar gewoon programmeren, dus dat hoort er zeker niet bij. Alleen het doelzoeken en dergelijke is wel een mooie functie van Excel zelf.
Top, het werkt !

Hier zou ik zeker nóóit achter zijn gekomen zonder hulp. Dus super bedankt! :)
qu63zaterdag 16 juni 2012 @ 14:44
quote:
0s.gif Op woensdag 13 juni 2012 00:26 schreef qu63 het volgende:

[..]

• Wat ik wil bereiken:
Al die gekleurde blokjes halen hun data uit andere sheets en staan voor de 6 verschillende onderdelen van mijn studie. Alle onderdelen hebben een looptijd in maanden. In de praktijk komt het er op neer dat 1 dag werk = 1 maand, maar 5 weken werk is ook 1 maand.

Aangezien er per studiepunt 28 uur gewerkt moet worden kan ik terugrekenen hoe lang ik per dag, per onderdeel aan mijn studie zou moeten zitten. Op 1 september 2009 dus 2 uur en 12 minuten aan onderdeel oranje (projecten). Als ik A1 aanpas naar 2010 verandert de hele sheet, omdat de maandindeling dynamisch gedaan wordt.

Dit gebeurt dus allemaal in A2:AZ360.

Op regel 363 staan alle 31 dagen van de maand.
Vanaf 364 wordt alles weer dynamisch gevuld en wordt er in B364 (en verder) gekeken naar het totaal aantal uren en minuten dat ik die dag aan m'n studie zou moeten besteden volgens mijn planning.

De planning per week beslaat 9 rijen:

[..]

Alleen begint niet iedere maand op een maandag, vandaar de ingewikkelde zoekfunctie. Die stelt eerst vast in welke maand er gezocht moet worden, daarna gaat ie op zoek naar de totalen. En dat ziet er dus ingewikkeld uit..

• Input komt dus vanuit een andere planning, deze gegevens kloppen. Die formule ziet er zo uit (voor C4):

[..]

In B4 staat dit:

[..]

Die kijk dus welke dagnummer er bij de dag hoort.

Terug naar de vorige formule:
-Eerste is gewoon een simpele check of de dag + datum aanwezig zijn. Maandag 1 sept 2009 bestaat niet, dus die is leeg. Dinsdag 1 september wel, dus daar wordt de functie wel uitgevoerd.
-Daarna gaat ie op zoek naar de maand + jaar uit A2 in het tabblad projecten om in de 18e rij te kijken naar hoeveel punten ik die maand denk te halen voor het onderdeel projecten.
-Als ik dat getal deel door het aantal dagen in de maand en de uitkomst is 0 dan blijft de cel leeg, anders wordt dat de uitkomst van de formule.

• Welke foutmelding krijg ik:
Ik krijg dus geen foutmelding.. De formule doet wat ie moet doen, alleen krijg ik daarme dus niet de gewenste uitkomst :P

Ik deel nu, zoals een paar posts terug geopperd werd, door 30,5 ipv 30 en daarmee lijkt het probleem verholpen, alleen zijn er nu heel veel maanden met 31 dagen, dus daar klopt ook nog iets niet. Maar dat is voor morgen, nu eerst slapen ;)
Functie aangepast van
quote:
=INDEX(INDIRECT("$B$"&3+(AFRONDEN(($A399-$A$364)/30;0)*9)&":$AW$"&9+(AFRONDEN(($A399-$A$364)/30;0))*9);ALS(WEEKDAG($A399;3)+B$363>7;ALS(WEEKDAG($A399;3)+B$363-7>7;ALS(WEEKDAG($A399;3)+B$363-14>7;ALS(WEEKDAG($A399;3)+B$363-21>7;ALS(WEEKDAG($A399;3)+B$363-28>7;ALS(WEEKDAG($A399;3)+B$363-35>7;NB();WEEKDAG($A399;3)+B$363-35);WEEKDAG($A399;3)+B$363-28);WEEKDAG($A399;3)+B$363-21);WEEKDAG($A399;3)+B$363-14);WEEKDAG($A399;3)+B$363-7);WEEKDAG($A399;3)+B$363);ALS(WEEKDAG($A399;2)+B$363>8;ALS(WEEKDAG($A399;2)+B$363-8>8;ALS(WEEKDAG($A399;2)+B$363-16>8;ALS(WEEKDAG($A399;2)+B$363-24>8;ALS(WEEKDAG($A399;2)+B$363-32>8;NB();40);32);24);16);8))
naar
quote:
=INDEX(INDIRECT("$B$"&3+(DATUMVERSCHIL($A$364;$A364;"m")*9)&":$AW$"&9+(DATUMVERSCHIL($A$364;$A364;"m")*9));ALS(WEEKDAG($A364;3)+B$363>7;ALS(WEEKDAG($A364;3)+B$363-7>7;ALS(WEEKDAG($A364;3)+B$363-14>7;ALS(WEEKDAG($A364;3)+B$363-21>7;ALS(WEEKDAG($A364;3)+B$363-28>7;ALS(WEEKDAG($A364;3)+B$363-35>7;NB();WEEKDAG($A364;3)+B$363-35);WEEKDAG($A364;3)+B$363-28);WEEKDAG($A364;3)+B$363-21);WEEKDAG($A364;3)+B$363-14);WEEKDAG($A364;3)+B$363-7);WEEKDAG($A364;3)+B$363);ALS(WEEKDAG($A364;2)+B$363>8;ALS(WEEKDAG($A364;2)+B$363-8>8;ALS(WEEKDAG($A364;2)+B$363-16>8;ALS(WEEKDAG($A364;2)+B$363-24>8;ALS(WEEKDAG($A364;2)+B$363-32>8;NB();40);32);24);16);8))
De verborgen functie DATUMVERSCHIL() (DATEDIFF()) deed precies wat ik probeerde te doen met dat afronden e.d. Nu doet ie het weer zoals ie het moet doen! ^O^
En al die ALS()-functies die er na komen zijn om te bepalen hoeveel blokken de INDEX()-functie naar rechts moet, dat kan dus niet korter helaas..
McGilleszaterdag 16 juni 2012 @ 17:13
quote:
0s.gif Op zaterdag 16 juni 2012 14:44 schreef qu63 het volgende:

En al die ALS()-functies die er na komen zijn om te bepalen hoeveel blokken de INDEX()-functie naar rechts moet, dat kan dus niet korter helaas..
De gemeenschappelijke factor is WEEKDAG($A364;3)+B$363
Dus als je nou via verticaal zoeken een tabel maakt met de bijbehorende waarden en als je hem daarin laat zoeken dan ben je klaar. 1 regel i.p.v. de weet ik veel hoeveel nu :P
McGilleszaterdag 16 juni 2012 @ 17:13
quote:
0s.gif Op zaterdag 16 juni 2012 13:34 schreef coffeebiscuit1 het volgende:

[..]

Ik was net bezig met uploaden en begeleidend tekstje schrijven, maar gelukkig kwam snabbi net op tijd met de uitkomst. Toch bedankt voor je aanbod ;)

[..]

Top, het werkt !

Hier zou ik zeker nóóit achter zijn gekomen zonder hulp. Dus super bedankt! :)
Mocht je nog geinteresseerd zijn in de formule dan moet je hem maar uploaden. Via formules vind ik persoonlijk dit soort dingen duidelijker.
qu63zaterdag 16 juni 2012 @ 17:44
quote:
0s.gif Op zaterdag 16 juni 2012 17:13 schreef McGilles het volgende:

[..]

De gemeenschappelijke factor is WEEKDAG($A364;3)+B$363
Dus als je nou via verticaal zoeken een tabel maakt met de bijbehorende waarden en als je hem daarin laat zoeken dan ben je klaar. 1 regel i.p.v. de weet ik veel hoeveel nu :P
In deze formule wel ja, maar in de cel ernaast is het E$363, daarnaast I$363 en ga zo maar door ;)
En de regel er onder gebruikt weer $A365 samen met B$363, E$363, etc..
Deetchmaandag 18 juni 2012 @ 09:29
Mooie discussie, met macro's of met hendig sjieke excel formules. Ik heb ook wel eens tijden lopen prutsen in VBA tot een collega zei: "Maar dat kna deze functie toch?"

Datedif() was er ook zo een: http://www.cpearson.com/excel/datedif.aspx
Let op dat deze functie anders werkt dan datediff in VBA
xyntarsusmaandag 18 juni 2012 @ 10:41
Hoi helpende handen,

na super hulp vorige week nu een nieuwe vraag.

Ik wil een knop maken die ervoor zorgt dat het actieve tablad de naam krijgt van een specifieke cell

iets als activesheet.name = value.[b2]

iemand een idee wat de correcte code is en hoe ik dat onder een knop krijg?
Deetchmaandag 18 juni 2012 @ 12:23
Doe Alt+F11 (visual basic opent)
Rechtsklik op je VBAproject (naam spreadsheet)
insert module
typ hierin de code

1
2
3
4
5
6
7
8
9
Sub fok()

Dim addr As Range

Set addr = Application.InputBox("Selecteer de cel met de bnaam voor dit tabblad", Type:=8)

If addr.Value <> "" Then ActiveSheet.Name = addr.Value

End Sub

Gooi een knop in je sheet en koppel deze aan de macro.
Deetchmaandag 18 juni 2012 @ 12:25
Een knop voeg je als volgt toe in excel 2010: http://office.microsoft.c(...)eet-HP010236676.aspx

ribbon developer, insert controls, form control meest linker item
Er opent dan een venstertje waarin je je macro kunt kiezen

Voor 2003: http://support.microsoft.com/kb/141689
qu63maandag 18 juni 2012 @ 12:26
quote:
3s.gif Op maandag 18 juni 2012 09:29 schreef Deetch het volgende:
Mooie discussie, met macro's of met hendig sjieke excel formules. Ik heb ook wel eens tijden lopen prutsen in VBA tot een collega zei: "Maar dat kna deze functie toch?"
Mijn voorkeur ligt ook bij standaardformules, dat maakt het uitwisselen naar andere systemen vaak makkelijker ivm beveiling etc.
quote:
Datedif() was er ook zo een: http://www.cpearson.com/excel/datedif.aspx
Let op dat deze functie anders werkt dan datediff in VBA
Daar vond ik em ook ja, deed precies wat ik eerst op een moeilijke manier probeerde :)
xyntarsusmaandag 18 juni 2012 @ 12:42
thx voor de hulp.

kan dit trouwens ook zonder dat ik het menu krijg (dat ie automatisch cel B2 pakt?)
qu63maandag 18 juni 2012 @ 13:09
quote:
0s.gif Op maandag 18 juni 2012 12:42 schreef xyntarsus het volgende:
thx voor de hulp.

kan dit trouwens ook zonder dat ik het menu krijg (dat ie automatisch cel B2 pakt?)
Dan krijg je
1
2
3
4
5
Sub fok()

If Range("B2").Value <> "" Then ActiveSheet.Name = Range("B2").Value

End Sub
als ik t goed heb..
qu63maandag 18 juni 2012 @ 13:10
Slotteke! Tot in t volgende deel ;)