abonnement bol.com Unibet Coolblue
pi_75341167
quote:
Op zondag 6 december 2009 16:58 schreef qu63 het volgende:

[..]

Dat kan.
500 + (begindatum)-(datum van vandaag)/7, afronden op hele getallen en dat maal 10 doen.

Of wil je die 10 euro iedere keer op een nieuwe regel hebben?
Nee dit is PRIMA!
Is er wel een mogelijkheid om 'datum van vandaag' in te voeren zodat ik niet elke keer bij updaten dat zelf hoef te doen, maar dat hij dat dus zelf uit de kalender haalt o.i.d.?
Even uitproberen of ik het voor elkaar krijg.
pi_75341333
als je in een cel de volgende formule typt: =DATUM() staat in die cel altijd de datum van vandaag.
Supra Groningam Nihil
Postjubilea: 10.000 15.000 20.000 25.000
Sit jou kop in die koei se kont en wag tot die bul jou kom holnaai
Wat niemand je vertelt over de bioindustrie, geen bloed maar feiten
pi_75341548
quote:
Op zondag 6 december 2009 17:07 schreef Deetch het volgende:
als je in een cel de volgende formule typt: =DATUM() staat in die cel altijd de datum van vandaag.
Letterlijk vertalen naar het engels werkte niet, maar =today wel.

Het is nu opgelost dus ik kan verder bouwen aan mijn excell. Dank aan beiden voor de input
  maandag 7 december 2009 @ 11:38:14 #79
47711 Harmvt
Bubblemaker
pi_75364877
Nooit geweten dat er zo'n levendige Excel-community op Fok! bestond.. leuk! Misschien kan 1 van jullie mij ook enigszins op weg helpen.
Ik werk met de Nederlandse versie, 2003. Wat niveau betreft zit ik met Excel denk ik iets hoger dan de basisbeginselen. Ik kan bijvoorbeeld aardig overweg met Draaitabellen en Verticaal zoeken, maar van Macro’s etc heb ik nog geen kaas gegeten.

Ik zit met het volgende: Ik wil voor mijn stage (bij een grote autodealer met 6 vestigingen) de managementrapportages overzichtelijker en makkelijker in gebruik maken.
Om te beginnen wil ik de totalen van 6 verschillende Excel bestanden overzichtelijk weergeven in 1 Excel bestand. Deze 6 bestanden worden dagelijks automatisch aangeleverd en bestaan uit 1 tabblad met een paar honderd regels die zijn voorzien van een regelcode. De bestandsnaam van de 6 automatisch gegenereerde bestanden is iedere dag anders (naar datum).

Hoe krijg ik Excel nu zo ver, dat hij met 1 druk op de knop de totalen per regelcode uit de andere bestanden haalt en deze importeert? Moet ik dan met Macro’s gaan werken? En zo ja, wat is dan een goede manier om mijzelf dit eigen te maken?

Alvast bedankt!
pi_75370101
Als de totalen per regelcode altijd op dezelfde plek staan en de bestanden zelf ook altijd in dezelfde map staan zou je met INDIRECT al een heel eind moeten komen. Dan heb je dus geen macro's nodig.

Andere bestanden open je met: Workbooks.Open Filename:= "variabele die de filelokatie+naam bevat"

Oh ja, als je meer informatie geeft zoals soort bestand waar de gegevens in staan, opbouw van het bestand, lokatie van het bestand etc etc dan kan je ook een wat gedetailleerder antwoord verwachten.
Supra Groningam Nihil
Postjubilea: 10.000 15.000 20.000 25.000
Sit jou kop in die koei se kont en wag tot die bul jou kom holnaai
Wat niemand je vertelt over de bioindustrie, geen bloed maar feiten
pi_75370123
quote:
Op zondag 6 december 2009 17:15 schreef FrituurVetPet het volgende:

[..]

Letterlijk vertalen naar het engels werkte niet, maar =today wel.

Het is nu opgelost dus ik kan verder bouwen aan mijn excell. Dank aan beiden voor de input
oh ja dat was ook zo DATE is voor in visual basic
Supra Groningam Nihil
Postjubilea: 10.000 15.000 20.000 25.000
Sit jou kop in die koei se kont en wag tot die bul jou kom holnaai
Wat niemand je vertelt over de bioindustrie, geen bloed maar feiten
  maandag 7 december 2009 @ 15:29:57 #82
47711 Harmvt
Bubblemaker
pi_75373831
Bedankt voor je reactie!
Ik heb zelf nog wat verder gezocht, en blijkbaar moet ik me dus gaan verdiepen in VBA. Maar hoe begin je daar aan? Iemand een tip om jezelf dat een beetje snel (en gratis) eigen te maken? Ik heb wel enige ervaring met programmeren in Q(uick)Basic van vroegah...
quote:
Op maandag 7 december 2009 13:55 schreef Deetch het volgende:
Oh ja, als je meer informatie geeft zoals soort bestand waar de gegevens in staan, opbouw van het bestand, lokatie van het bestand etc etc dan kan je ook een wat gedetailleerder antwoord verwachten.
De bestanden waar ik het in eerste instantie over had kan ik niet posten, maar ik heb wel een ander vergelijkbaar voorbeeld. Dit bestand ontvang ik wekelijks. Ik heb om privacy redenen een aantal kolommen verwijdert. Bestand op SkyDrive Het bestand heeft iedere week een iets andere benaming, gezien de datum op het einde, maar zal op een vaste locatie worden opgeslagen.

Hiervan zou ik ook graag een werkmap maken waar de totalen van die week met een druk op de knop worden toegevoegd. Die totalen moeten worden onderverdeeld in de verschillende vestigingen (blauw, elke vestiging een eigen werkblad). En dan per regelcode (groen) het totaal bedrag (oranje).

Is de verwachting dat ik dit met wat basiskennis van VBA zelf kan maken reëel, of komt hier te veel bij kijken?

[ Bericht 2% gewijzigd door Harmvt op 07-12-2009 15:58:32 ]
pi_75374303
Denk dat het wel lastig is, maar als je QB hebt gehad kom je een eind!
Ik heb ooit s een goed boek gehad, Sam on VBA oid?
  maandag 7 december 2009 @ 15:54:21 #84
62215 qu63
..de tijd drinkt..
pi_75374988
VBA is toch niet per se nodig?

Als het altijd bestandsnaamWEEKNUMMER.xls is en de cel die gelezen moet worden altijd D45 is (bijvoorbeeld) kan je dat toch ook met de standaard excel-functies maken?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_75376116
quote:
Om te beginnen wil ik de totalen van 6 verschillende Excel bestanden overzichtelijk weergeven in 1 Excel bestand. Deze 6 bestanden worden dagelijks automatisch aangeleverd en bestaan uit 1 tabblad met een paar honderd regels die zijn voorzien van een regelcode. De bestandsnaam van de 6 automatisch gegenereerde bestanden is iedere dag anders (naar datum).

Hoe krijg ik Excel nu zo ver, dat hij met 1 druk op de knop de totalen per regelcode uit de andere bestanden haalt en deze importeert? Moet ik dan met Macro’s gaan werken? En zo ja, wat is dan een goede manier om mijzelf dit eigen te maken?
Hij zou met VBA door een map kunnen loopen en elk bestand uitlezen.
Als jij 6 bladen hebt met 30 kolommen is het kutwerk om elke keer die formules aan te passen.

Maar ik ben zelf al niet zo'n fan van dit soort dingen bouwen, dus ik begin er niet aan
  maandag 7 december 2009 @ 16:30:25 #86
47711 Harmvt
Bubblemaker
pi_75376556
quote:
Op maandag 7 december 2009 15:54 schreef qu63 het volgende:
en de cel die gelezen moet worden altijd D45 is (bijvoorbeeld) kan je dat toch ook met de standaard excel-functies maken?
Dat is helaas niet het geval, kijk maar eens naar het bestand dat ik heb geupload.
  maandag 7 december 2009 @ 16:35:42 #87
47711 Harmvt
Bubblemaker
pi_75376759
DaFan: Dat boek wat je noemde kan ik zo snel niet vinden, was dat de precieze titel?
pi_75377727
Iets van
Sams teach yourself Visual Basic.

Was toen zo'n e-book wat ik ergens vandaan had.
pi_75401301
Even een paar beginnetjes:

Ten eerste moeten alle benodigde bestanden geopend worden. Hiervoor maak je een klein macrotje.
Je start macro opnemen, opent de benodigde bestanden en kijkt hoe de code eruit ziet (Alt+F11)

Nu zie je als het goed is:
1
2
3
4
5
sub bladedibla()

code om files te openen

end sub


Om een datum in te voeren die je vervolgens aan je bestandnaamplakt voeg je een inputbox toe:
Dit doe je voor de code van het openen van de bestanden
1
2
3
4
5
datum = Inputbox("Geef datum bestanden (ddmmjj)"
vervolgens maak je zes variabelen
file1 = "standaardnaam van bestand1" & datum & ".xls"
file2 = ""standaardnaam van bestand2" & datum & ".xls"
*** idem voor file3, file4, file5, file 6


vervolgens vervang je in de code voor het openen van bestanden elke keer de uitgeschreven filenaam door de variable file1, file2 etc etc

Nu testen en als het niet werkt of je er niet komt komt horen we het wel.

Vervolgens kun je in de geopende bestanden verticaal zoeken

In je verzamelsheet typ je in een cel (format als tekst) de datum zoals deze ook in de bronbestanden staat.

Vervolgens ga je verticaal zoeken maar gebruik je om de zoekrange aan te geven de functie INDIRECT.

1
2
3
4
5
6
=VLOOKUP("test",[Book1]Sheet1!$A$1:$B$8,2,FALSE)
**** formule zoekt naar "test" in het bestand [Book1], sheet1

In cel C1 staat nu: [Book1]Sheet1!$A$1:$B$8
=VLOOKUP("test",INDIRECT(C1),2,FALSE)
**** heeft hetzelfde resultaat als voorgaande


Cel C1 kun je zelf samenvoegen door een combinatie van een tekststring en een andere cel (waar je datum in staat (bijv cel b1).

Voorbeeld. In B1 zet je 1
in C1 zet je dan als voorbeeld: ="[Book"&B1&"]Sheet1!$A$1:$B$8"
De formule =VLOOKUP("test",INDIRECT(C1),2,FALSE) geeft weer hetzelfde resultaat
Supra Groningam Nihil
Postjubilea: 10.000 15.000 20.000 25.000
Sit jou kop in die koei se kont en wag tot die bul jou kom holnaai
Wat niemand je vertelt over de bioindustrie, geen bloed maar feiten
pi_75402009
Uit: heleboel labels in VBA leegmaken. (naam + #)
quote:
Op dinsdag 8 december 2009 10:41 schreef Holy_Goat het volgende:
Hoi,

ik heb een stuk of 30 labels in een form (VBA, excel 2003),
met de naam label1 - label30. Arrays kunnen niet gemaakt worden in vba zover ik begrepen heb.
Is er nu wel een snelle manier om lbl 1-30 leeg te maken zonder 30 lines te hoeven typen?

HG
1
2
3
4
For i = 1 To 30
   sName = "label" & i
   Me.Controls(sName).Text = ""
Next i
Supra Groningam Nihil
Postjubilea: 10.000 15.000 20.000 25.000
Sit jou kop in die koei se kont en wag tot die bul jou kom holnaai
Wat niemand je vertelt over de bioindustrie, geen bloed maar feiten
  dinsdag 8 december 2009 @ 16:07:03 #91
47711 Harmvt
Bubblemaker
pi_75412461
quote:
Op dinsdag 8 december 2009 10:36 schreef Deetch het volgende:
Even een paar beginnetjes:
Allereerst bedankt voor je hulp Deetch!

Het eerste deel is me aardig gelukt. Ik probeer nu eerst om het werkend te krijgen met het andere bestand dat ik als voorbeeld gaf.
Mijn code ziet er nu dus zo uit:
1
2
3
4
5
6
7
Sub Eerste_test()
datum = InputBox("Geef datum in te voeren bestand:(ddmmjj)")
FILE1 = "114_Q5_InterneRegelsWeek_excel_" & datum & "_H114.xls"
    ChDir "B:\P&O\H*******\Temp"
    Workbooks.Open Filename:=FILE1
    Windows("Map1").Activate
End Sub


Het bestand waarvan ik de datum opgeef wordt dan geopend. Maar is het is het perse nodig dat de betreffende bestanden fysiek geopend worden? Mijn doel is om het eindresultaat dummy-proof te maken en dan werkt het niet mee dat er 6 bestanden open springen.

Maar nu het laatste stuk van de code die je poste... daar loop ik helemaal vast (Ik gebruik hier trouwens ook de NL versie (2003) dus misschien dat er mee te maken heeft).
Excel blijft mijn vert.zoeken formule incorrect vinden. Kan ik trouwens wel gebruik maken van vert.zoeken? Als je naar het bestand kijkt dat ik heb bijgevoegd, hebben heel veel regels dezelfde datum.

Voor de duidelijkheid: Ik zou graag willen dat alle regels van alle bestanden in die map aan de verzamelsheet worden toegevoegd. De regels uit het wekelijkse nieuwe bestand moeten met de klik op knop onderaan komen.

Of zijn dit allemaal een beetje te hoog gegrepen ambities voor een VBA-N00b

[ Bericht 3% gewijzigd door Harmvt op 08-12-2009 16:13:14 ]
pi_75414326
Om te verticaal zoeken moeten de bestanden open staan. met vert.zoeken kun je idd maar een cel van 1 datum opzoeken.

Je wilt dus alle regels van een bepaalde datum toevoegen aan je overzichtssheet?
Of wil je alle regels van alle 6 sheets samenvoegen, zeg maar de zes sheets verzamelen tot 1 sheet?
Supra Groningam Nihil
Postjubilea: 10.000 15.000 20.000 25.000
Sit jou kop in die koei se kont en wag tot die bul jou kom holnaai
Wat niemand je vertelt over de bioindustrie, geen bloed maar feiten
pi_75434949
Ok, vergeet even die 6 bestanden. Het eerste dat ik wil bewerkstelligen is om de gegevens uit dat bestand dat ik in bovenstaande posts heb geupload te verzamelen in 1 verzamelsheet. Dat met die 6 bestanden lijkt er erg op, maar is de volgende stap.
Bovengenoemd bestand krijg ik wekelijks toegestuurd en ik wil gewoon dat alle gegevens toegevoegd worden aan 1 verzamelsheet, zodat ik er vervolgens grafieken etc op los kan laten om trends te ontdekken.
Handmatig kopiëren en plakken zou het meest voor de hand liggend zijn, maar ik wil dit trucje dus voor nog meer doeleinden gaan gebruiken. Zoals dat met die 6 bestanden. Dit alles moet ook nog eens fool-proof zijn voor de mensen die er mee gaan werken.
  woensdag 9 december 2009 @ 09:30:19 #94
73305 Stpan
Zullen wij laten hoo-ooren...
pi_75435530
Excel2007 Engels

Ik heb het volgende.
Een lange lijst van nummers die allemaal 5-cijferig dienen te worden.
Via =IF(LEN(A1)=1;"0000"&A1 etc. is het niet moeilijk om te kortere nummers langer te maken.

Nu heeft iemand ook heel handig een aantal 6-cijferige referentienummers aan de data toegevoegd. Die beginnen allemaal met 900xxx. Dus bijv 900111. Dit moet worden 90111.

Ik dacht zelf iets in de trend van CONCATENATE en iets met LEFT(A1;1) en RIGHT(A1,4). Maar volgens mij kan ik formules niet concatenaten, het lukt mij iig niet.... Iemand een idee?
pi_75435610
Moet het 2e nummer elke keer wegvallen, of de eerste nul oid?
pi_75435909
CONCATENATE is niet echt nodg hier, een ampersand voldoet:

LEFT(A1;1)&RIGHT(A1;4)

Beetje vreemd trouwens dat je Engels & Nederlandse notatie door elkaar hebt, normaal is Engels met komma's.
  woensdag 9 december 2009 @ 10:09:08 #97
73305 Stpan
Zullen wij laten hoo-ooren...
pi_75436411
Schoot me nu pas te binnen dat ik inderdaad gewoon een & teken ertussen kan plakken Thanks!

En ja die Engelse vs. Nederlandse notatie heeft te maken dat ik Engelse versie draai, maar met de systemen die we hier gebruiken Nederlandse datum en currency values moet gebruiken. Schept nog weleens verwarring.....
  woensdag 9 december 2009 @ 10:57:50 #98
73305 Stpan
Zullen wij laten hoo-ooren...
pi_75437910
Nog een andere vraag dan maar:

Ik gebruik nu Access om een fixed width vast te stellen, fixed number of characters is misschien een betere omschrijving.
Ik moet namelijk alles kunnen exporteren naar een .txt file die een leverancier kan uitlezen.

Bijvoorbeeld als in column B iemand Pietersen van z'n achternaam heet, en de volgende heet N'Gulu Faseko Faso, dan is het namelijk de bedoeling dat column C met voornaam voor alle rijen op exact dezelfde positie begint.

Is zoiets makkelijk te regelen in Excel, dat zou me namelijk een copy paste stap naar Access schelen! Iets via Custom settings van het cell-format? Thanks.

[ Bericht 4% gewijzigd door Stpan op 09-12-2009 11:04:44 ]
pi_75441784
Wil je testen hoe lang iets is of moet er dan nog iets mee gebeuren?
Wat zou de output zijn als Pietersen in B1 staan en in B2 staat N'Gulu Faseko Faso ?
  woensdag 9 december 2009 @ 13:38:00 #100
73305 Stpan
Zullen wij laten hoo-ooren...
pi_75443771
De output zou moeten zijn dat:
Pietersen (+ 71 spaties)
N'Gula Bluka (+ bijv. 68 spaties)

Als ik dan exporteer naar txt dan zullen C1 en C2 en alle andere in kolom C op positie 81 beginnen.
abonnement bol.com Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')