/offtopicquote:Op donderdag 11 januari 2007 09:24 schreef RayMania het volgende:
Handig topic, heb zelf ook af en toe wat vragen over Excel.
Kan best met voorwaardelijke opmaak hoor. Alleen moet je dan bij het opgeven van de voorwaarde niet 'Celwaarde is' maar 'Formule is' opgeven.quote:Op donderdag 11 januari 2007 09:23 schreef realbase het volgende:
Goed TS Start zelf ...
Ik wil graag dat als er in kolom P een bepaalde status staat, dat dan de hele regel een nieuwe kleur krijgt:
A: geel
AF: rood
O: wit (zoals ie nu staat)
P: groen
NA: rood
I: lichtblauw
Ik heb eens gekeken met unconditional formatting maar dat lukte niet echt.
Dit zal toch met een macro moeten dacht ik zo. NU ben ik daar niet echt een ster in.
Iemand een idee?
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 36 37 38 39 | ' ' Macro2 Macro ' Macro recorded 11-1-2007 by Deetch ' ' Range("A1").Select Do Until ActiveCell.Value = "" If ActiveCell.Offset(0, 4).Value = "A" Then ActiveCell.EntireRow.Select Selection.Font.ColorIndex = 6 ActiveCell.Offset(1, 0).Select ElseIf ActiveCell.Offset(0, 4).Value = "AF" Then ActiveCell.EntireRow.Select Selection.Font.ColorIndex = 3 ActiveCell.Offset(1, 0).Select ElseIf ActiveCell.Offset(0, 4).Value = "O" Then ActiveCell.EntireRow.Select Selection.Font.ColorIndex = 2 ActiveCell.Offset(1, 0).Select ElseIf ActiveCell.Offset(0, 4).Value = "P" Then ActiveCell.EntireRow.Select Selection.Font.ColorIndex = 4 ActiveCell.Offset(1, 0).Select ElseIf ActiveCell.Offset(0, 4).Value = "I" Then ActiveCell.EntireRow.Select Selection.Font.ColorIndex = 28 ActiveCell.Offset(1, 0).Select ElseIf ActiveCell.Offset(0, 4).Value = "NA" Then ActiveCell.EntireRow.Select Selection.Font.ColorIndex = 3 ActiveCell.Offset(1, 0).Select Else ActiveCell.Offset(1, 0).Select End If Loop End Sub |
Ooooow, ik dacht dat hij met A, AF, O enz. de kolommen bedoelde waarop de voorwaardelijke opmaak van toepassing was. Maar het zijn dus de verschillende statussen die kolom P kunnen komen?quote:Op donderdag 11 januari 2007 10:25 schreef Deetch het volgende:
Je kunt zo echter maar 3 conditional formats maken en TS heeft er 6 nodig (eigenlijk 5 want AF en NA zijn beide rood.
juistquote:Op donderdag 11 januari 2007 10:28 schreef Frollo het volgende:
[..]
Ooooow, ik dacht dat hij met A, AF, O enz. de kolommen bedoelde waarop de voorwaardelijke opmaak van toepassing was. Maar het zijn dus de verschillende statussen die kolom P kunnen komen?
Jawel dat kan met een macro. Hierin ga je de tekststring karakter voor karakter bij langs en bepaal je of het een integer danwel tekst is. indien getal dan deze onthouden en naar volgende karakter gaan. Als dit ook getal dan het eerste getal vermenigvuldigen met 10 en het tweede getal erbij op tellen. Uiteindelijk strip je zo alle getallen uit de tekststring.quote:Op donderdag 11 januari 2007 10:14 schreef Autoreply het volgende:Kan ik uit een willekeurige combinatie tekst waar één getal in staat dit geval isoleren en als "number" ergens anders neerfietsen? Kan je alles zo afronden dat het 2 of 3 cijfers significant is? Nu pakt ie alleen het aantal getallen achter de 0...
Dank, ik ga hier 's ff naar kijkenquote:Op donderdag 11 januari 2007 10:44 schreef Deetch het volgende:
[..]
Jawel dat kan met een macro. Hierin ga je de tekststring karakter voor karakter bij langs en bepaal je of het een integer danwel tekst is. indien getal dan deze onthouden en naar volgende karakter gaan. Als dit ook getal dan het eerste getal vermenigvuldigen met 10 en het tweede getal erbij op tellen. Uiteindelijk strip je zo alle getallen uit de tekststring.
Ik ga wel ff prutsen, brb
Afronden op significante cijfers: http://j-walk.com/ss/excel/usertips/tip032.htm
het lijkt me makkelijker alle cijfers in een andere string te zetten en deze dan te converteren naar integerquote:Op donderdag 11 januari 2007 10:44 schreef Deetch het volgende:
[..]
Jawel dat kan met een macro. Hierin ga je de tekststring karakter voor karakter bij langs en bepaal je of het een integer danwel tekst is. indien getal dan deze onthouden en naar volgende karakter gaan. Als dit ook getal dan het eerste getal vermenigvuldigen met 10 en het tweede getal erbij op tellen. Uiteindelijk strip je zo alle getallen uit de tekststring.
Ik ga wel ff prutsen, brb
Afronden op significante cijfers: http://j-walk.com/ss/excel/usertips/tip032.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 35 36 37 38 39 40 41 | 'by Deetch linestring = ActiveCell.Value lengthstring = Len(linestring) savestring = "" For i = 1 To lengthstring characterstring = Mid(linestring, i, 1) If characterstring = "0" Then savestring = savestring + characterstring ElseIf characterstring = "1" Then savestring = savestring + characterstring ElseIf characterstring = "2" Then savestring = savestring + characterstring ElseIf characterstring = "3" Then savestring = savestring + characterstring ElseIf characterstring = "4" Then savestring = savestring + characterstring ElseIf characterstring = "5" Then savestring = savestring + characterstring ElseIf characterstring = "6" Then savestring = savestring + characterstring ElseIf characterstring = "7" Then savestring = savestring + characterstring ElseIf characterstring = "8" Then savestring = savestring + characterstring ElseIf characterstring = "9" Then savestring = savestring + characterstring End If Next i ActiveCell.Offset(0, 1).NumberFormat = "@" ActiveCell.Offset(0, 1).Value = savestring ActiveCell.Offset(0, 2).NumberFormat = "0" ActiveCell.Offset(0, 2).Value = savestring End Sub |
Ik weet niet veel van Excel. Wel genoeg om simpele vragen te beantwoorden. En moeilijke vragen kan ik hier dan mooi kwijt.quote:Op donderdag 11 januari 2007 09:29 schreef Frollo het volgende:
Volgens mij weet ik best wel iets van Excel en hoop dan ook in dit topic héél veel Fokk!ertjes blij te maken!![]()
![]()
Het lijkt wel vrijdag op me werk en dit soort vraagjes zijn handig om mijn VB skills af en toe te testen.quote:
MOet ik nou nog wat aanpassen in die macro? Want zo werktie nietquote:Op donderdag 11 januari 2007 10:25 schreef Deetch het volgende:
Je kunt zo echter maar 3 conditional formats maken en TS heeft er 6 nodig (eigenlijk 5 want AF en NA zijn beide rood.
Op die manier wordt het toch een macrotje ben ik bang.
[ code verwijderd ]
Uitleg:
Do until betekend dat de macro alle regels bij langs gaat zolang de waarde in de active cell (kolom A) niet leeg is.
activecell is de geactiveerde cel (in eerste instantie A1)
activecell.offset(0,4) betekend vier kolommen opzij ten opzichte van de actieve cel
activecell.offset(1,0).select beteknd de cel onder de active cel selecteren (dus volgende cel in kolom A)
de colorindex is de kleurcode (zie onder)
[afbeelding]
Thnx,quote:Op donderdag 11 januari 2007 13:30 schreef Deetch het volgende:
je moet de activecell.offset(0,4) aanpassen naar (0,15) zodat de macro kijkt naar de waarde in kolom P ipv E (zoals de voorbeeld macro).
Dat had ik ook al uitgelegd bij de uitleg dacht ik, maar misschien was dat niet duidelijk genoeg.
je moet wel de macro elke keer runnen als je je spreadsheet aanvult en in kolom A mogen geen lege cellen voorkomen tot onder het einde van je data.
1 |
1 2 3 4 | .ColorIndex = 6 .Pattern = xlSolid End With |
Nee dit varieert dus blijft handmatigquote:Op donderdag 11 januari 2007 13:36 schreef Deetch het volgende:
Dat ligt eraan of de nummering van te voren bekend is en constant. Dus als het altijd 10 facturen per maand zijn dan kan dat redelijk eenvoudig. Als het aantal facturen per periode niet contant is wordt het lastig en kun je ze beter gewoon handmatig inkloppen.
Dat denk ik wel, met database programma's ben je iets flexibeler in dit soort zaken maar daar weet ik niet zoveel van af.quote:Op donderdag 11 januari 2007 15:47 schreef mirelia het volgende:
[..]
Nee dit varieert dus blijft handmatig
Jammer maar bedankt
Ik denk wel dat dit kan, er van uitgaande dat je in dezelfde regel als het factuurnummer ook wel ergens de datum van de factuur hebt staan en dat ze in chronologische volgorde staan.quote:Op donderdag 11 januari 2007 13:32 schreef mirelia het volgende:
Iemand een idee hoe ik op een factuur:
A: automatisch kan doornummeren
B: maar dan op een speciale manier nl eerste factuur van jan 2007 is dan 0701001 en eerste feb is 0702001 etc
Of is dit te ingewikkeld?
Alleen als er een referentie is naar het nummer van de voorgaande factuur. Excel is niet in staat om zelf te verzinnen de hoveelste factuur van de maand het is.quote:Op donderdag 11 januari 2007 18:23 schreef mirelia het volgende:
Er word elke maand wel een factuur gemaakt maar ik bedoelde het toch anders denk ik
Ik bedoelde de factuurnummers OP de factuur
Dus stel dat de datum in cel G14 staat en het factuurnummer in cel F14, hoe zou de formule dan zijn?
en zou het wel werken zo??
Ja en dat word waarschijnlijk moeilijkquote:Op donderdag 11 januari 2007 18:32 schreef hooibaal het volgende:
[..]
Alleen als er een referentie is naar het nummer van de voorgaande factuur. Excel is niet in staat om zelf te verzinnen de hoveelste factuur van de maand het is.
nieuwe kolom met volgende formule maken. uitgegaan van cel G1 als datum en cel F1 als factuurnummerquote:Op donderdag 11 januari 2007 18:23 schreef mirelia het volgende:
Er word elke maand wel een factuur gemaakt maar ik bedoelde het toch anders denk ik
Ik bedoelde de factuurnummers OP de factuur
Dus stel dat de datum in cel G14 staat en het factuurnummer in cel F14, hoe zou de formule dan zijn?
en zou het wel werken zo??
Het is de leeftijd moet je maar denkenquote:Op vrijdag 12 januari 2007 08:50 schreef realbase het volgende:
goh.. al jaren op fok.. en pas mn eerste nuttige topic
=100000*REST(JAAR(G1)/100)+1000*MAAND(G1)+F1quote:Op vrijdag 12 januari 2007 09:46 schreef Deetch het volgende:
[..]
nieuwe kolom met volgende formule maken. uitgegaan van cel G1 als datum en cel F1 als factuurnummer
=RIGHT(YEAR(G1);2)&IF(MONTH(G1)<10;0;"")&MONTH(G1)&IF(F1<10;"00";(IF(F1<100;"0";"")))&F1
of in nederlands
=RECHTS(JAAR(G1);2)&ALS(MAAND(G1)<10;0;"")&MAAND(G1)&ALS(F1<10;"00";(ALS(F1<100;"0";"")))&F1
Niet nodig. Dit kun je opvangen door de celeigenschappen aan te passen (zie het screenshot eerder in dit topic)quote:Op vrijdag 12 januari 2007 12:55 schreef Deetch het volgende:
elegante oplossing, je mist alleen de voorloopnul als het jaar onder 2010 is. Toch nog een ALS statement nodig hiervoor.
=ALS(REST(JAAR(G1);100)<10;"0"&100000*REST(JAAR(G1)/100)+1000*MAAND(G1)+F1;100000*REST(JAAR(G1)/100)+1000*MAAND(G1)+F1)
Een aangepaste getalnotatie maken met het aantal cijfers dat je wilt, bijvoorbeeld '00' of '000'.quote:Op zondag 14 januari 2007 15:36 schreef PiRANiA het volgende:
Hoe zorg ik er voor dat in Excel de getallen die ik typ altijd 3 tekens hebben?
voorbeeld:
01
02
03
==
14
15
etc...
http://www.accountingweb.nl/cgi-bin/item.cgi?id=84613&d=101quote:Op zondag 14 januari 2007 15:36 schreef PiRANiA het volgende:
Hoe zorg ik er voor dat in Excel de getallen die ik typ altijd 3 tekens hebben?
voorbeeld:
01
02
03
==
14
15
etc...
das toch gewoon "plakken speciaal" in Word en dan "als figuur", of bedoel je meerdere tabbladen ?quote:Op zondag 14 januari 2007 16:23 schreef Isegrim het volgende:
Kun je een Excel-bestand in zijn geheel invoegen in een Word-bestand? Het lukte mij alleen maar door het kopiëren van tabellen, maar ik wilde eigenlijk alle tabellen tegelijk als een soort 'plaatje' invoegen in een Word-bestand.
menu opmaak->voorwaardelijke opmaakquote:Op zondag 14 januari 2007 18:54 schreef PiRANiA het volgende:
Dan een tweede vraag:
Getallen lager dan zes, wil ik rood hebben, hoe doe ik dat?
-edit- Het zal ongeveer zo iets zijn:
¤ #.##0,00_-;¤ #.##0,00-
maar dan zonder eurotekens, en bij waarden lager dan zes, niet bij lager dan 0
Geluktquote:Op zondag 14 januari 2007 19:09 schreef ralfie het volgende:
[..]
menu opmaak->voorwaardelijke opmaak
gebruik wijst zichzelf
Nee, gewoon 1 tabblad, maar ik was aan het klooien met 'Insert - File'. Maar dit zal het wel zijn dan, bedankt.quote:Op zondag 14 januari 2007 19:04 schreef manny het volgende:
[..]
das toch gewoon "plakken speciaal" in Word en dan "als figuur", of bedoel je meerdere tabbladen ?
In visual basic editor naar het formulier gaan en dan view object. Vervolgens kun je de naam van het tekstvak lezen (rechts klikken op tekstvak en dan properties).quote:Op zondag 14 januari 2007 16:00 schreef Chav het volgende:
Het moet zo worden:
[afbeelding]
De witte vlakken die ik gemaakt heb, daar moet de tekst staan die in het andere topic staan.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | waarde1 = Range("A2").value waarde2 = Range("B2").value ****** idem voor waarde3 tm 7 ****** Sheets("uitvoer").activate load formulier formulier.label1.Caption = waarde1 formulier.label2.Caption = waarde2 ****** idem voor label3 tm 7 ****** formulier.show |
1 2 3 4 | TextBox1.Value = Sheet1.Range("A1") 'etc... End Sub |
1 |
1 |
1 |
Dat moet dd-mm-jjjj zijn, niet die nullen.quote:Op dinsdag 16 januari 2007 22:02 schreef Meeldraad het volgende:
Oké, via Celeigenschappen => aangepast => 00-00-0000
1 |
1 |
Hij wil het juist zonder streepjes invoeren, ik denk dat daar het probleem zit.quote:Op woensdag 17 januari 2007 01:26 schreef Arcee het volgende:
Of wil je het per se ook met streepjes in kunnen voeren?
Het gekke is dat als je een bestand tussen verschillende taalversies uitwisselt, dus bijvoorbeeld in een Engelse Excel een bestand maken en in een Nederlandse Excel weer inlezen, dat de vertaling van de functies en de leestekens gewoon goed gaat.quote:Op woensdag 17 januari 2007 10:17 schreef Deetch het volgende:
dat verschilt per taal wat trouwens de grootste stommiteit is die MS ooit heeft begaan, net als het vertalen van alle functies.
omdat MS "klantvriendelijk" wil zijn voor gebruikers zonder enige voorkennis en de functies graag intuititef wil laten aanvoelen. Zodra je echter al programmeerkennis hebt of in een andere taal hebt gewerkt ben je dus mooi zuur.quote:Op woensdag 17 januari 2007 10:22 schreef Frollo het volgende:
[..]
Het gekke is dat als je een bestand tussen verschillende taalversies uitwisselt, dus bijvoorbeeld in een Engelse Excel een bestand maken en in een Nederlandse Excel weer inlezen, dat de vertaling van de functies en de leestekens gewoon goed gaat.
Hij KAN het dus wel! Maar waarom kan ik dan in mijn Nederlandse Excel niet gewoon meteen =SUM(A1:B1) intypen als ik dat zou willen?
Wat lief van MS!quote:Op woensdag 17 januari 2007 10:30 schreef Deetch het volgende:
[..]
omdat MS "klantvriendelijk" wil zijn voor gebruikers zonder enige voorkennis en de functies graag intuititef wil laten aanvoelen.
Juist. Hier op het werk hebben we nog steeds af en toe macro's nodig die in Word 95 zijn geschreven, in fraai Nederlands WordBasic dus, en nu heb ik pas geleden te taak gekregen om dat om te zetten naar VBA. Leuke klus.quote:Zodra je echter al programmeerkennis hebt of in een andere taal hebt gewerkt ben je dus mooi zuur.
Met Excel95 (geloof ik) was het zelfs zo erg dat de visual basic in excel ook vertaald was.
dan kreeg je dus macro met "indien .. dan .. anders" etc, gelukkig zijn ze daar snel van afgestapt.
Zo, da's handig!quote:Op woensdag 17 januari 2007 10:55 schreef Deetch het volgende:
Gratis vertaal plugin voor excel functies. Je krijgt een werkbalk met de functie in je geinstalleerde taal, de functie in een andere taal en een taalkeuze. Je kunt dus alle functies van en naar je geinstalleerde taal naar een andere taal vertalen.
http://members.chello.nl/jvolk/keepitcool/files/TranslateIT.zip
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | If Not Intersect(Range("A1:A100"), Target) Is Nothing Then On Error GoTo wrong Dim vale As String For Each cell In Target If Not Len(cell.Value) = 10 And Not Len(cell.Value) = 0 Then vale = cell.Value cell.Value = Left$(vale, 2) & "-" & Mid$(vale, 3, 2) & "-" & Right$(vale, 4) vale = DateValue(cell.Value) End If Next cell End If Exit Sub wrong: MsgBox "De ingevulde waarde: '" & vale & "' is geen geldige datum!" End Sub |
Ja, daarom zei ik ook voer 't als datum in:quote:Op woensdag 17 januari 2007 09:23 schreef Frollo het volgende:
Hij wil het juist zonder streepjes invoeren, ik denk dat daar het probleem zit.
Want stel dat ik '112007' invoer, hoe moet Excel dan weten of ik a) 1 januari 2007 bedoel, b) een datum in november 2007 waarvan ik de dag vergeten ben in te voeren, of c) een elfde dag ergens in 2007 waarvan ik de maand vergeten ben?
Dat kun je uitproberen door het veld iets breder te maken. Als je de datum invoert en het wordt naar rechts uitgelijnd dan is het een datum, blijft het links staan dan is het tekst en niet goed dus.quote:Op woensdag 17 januari 2007 01:04 schreef Arcee het volgende:
Voer je de datum wel als datum in B3 in?
Dus bijvoorbeeld vandaag invoeren als 1/17/2007 en dat Excel 't dan afbeeldt als 17-01-2007 door dd-mm-jjjj bij celeigenschappen in te vullen.
Dus niét 17-01-2007 intypen, want dan maakt Excel er een tekst-type van.
1 |
Voer je de datum wel als echte datum in? Dus niét 31121947, maar 12/31/1947, of hoe die Nederlandse versie van Excel het ook maar wil hebben.quote:Op woensdag 17 januari 2007 13:22 schreef Meeldraad het volgende:
@ Arcees oplossing:
Celeigenschappen => aangepast => dd-mm-jjj. Dit is hoe ik het nu ook laat werken, maar dit leidt niet tot de automatische tussenvoeging van streepjes.
Wat je kunt zien als ik op zo'n cel sta:quote:Op woensdag 17 januari 2007 13:25 schreef Arcee het volgende:
Datums zijn als datum ingevoerd en worden correct met streepjes afgebeeld.
Dan was dit toch gewoon goed?quote:Op dinsdag 16 januari 2007 22:02 schreef Meeldraad het volgende:
Oké, via Celeigenschappen => aangepast => 00-00-0000 krijg ik wel automatisch streepjes, maar dan herkent ie het niet als datumwaarde. En als ik dan inderdaad overal waar in een rekencel B3 staat dit neerzet: DATUMWAARDE(TEKST.SAMENVOEGEN(LINKS(B3;2);"-";DEEL(B3;3;2);"-";RECHTS(B3;4)) dan rekent ie er mee, maar omdat overal te veranderen is echt, echt een ontzettend @#$$-werk (excuse my French).
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |