Zeker wel mogelijk hoor maar ik wil gewoon graag jouw bestand even zien om eraan te kloten ipv zelf zon onmeunig schema te bouwenquote:Op dinsdag 20 januari 2009 16:34 schreef sobriquet het volgende:
[..]
Wat snap je precies niet dan? Plaatjes lijken me duidelijk toch?
Waarom ik het wil is simpel, het scheelt me erg veel tijd. Anders moet ik zelf na elke regel zelf een kruisje zetten in het schema.
Maar volgens mij is zoiets gewoon niet mogelijk in excel...
Volgens mij is de oplossing voor de zoekformule als volgt:quote:Op dinsdag 20 januari 2009 14:27 schreef sobriquet het volgende:
Hallo,
Ik heb in excel een stuk of 10000 rijen met daarin (even gesimpliceerd) een naam en een voorwerp. Voorbeeld:
Klaas schep
Jannie hark
Klaas hark
Jannie schep
Dirk vork
Hendrie Lepel
Hendrie schep
Er zijn ongeveer 70 namen en 100 voorwerpen (in de toekomst worden dit er meer) die alle 70 uiteindelijk alle voorwerpen bij langs gaan.
Nu wil ik in een andere sheet of tabblad een matrix maken die automatisch een kruisje zet als ik achter een naam een voorwerp zet. Zo kan ik makkelijk zien welke namen welke voorwerpen nog moeten.
VB
[ code verwijderd ]
Weet iemand hoe ik dit voor elkaar kan krijgen?
1 |
1 |
mag ik hem ook? daar kan ik ook wel iets mee in mijn werk. Mail staat wel in me profiel.quote:Op dinsdag 20 januari 2009 17:06 schreef DaFan het volgende:
Sobriquet heeft mail, de macro is klaar.
Natuurlijk, sentquote:Op dinsdag 20 januari 2009 17:07 schreef Deetch het volgende:
[..]
mag ik hem ook? daar kan ik ook wel iets mee in mijn werk. Mail staat wel in me profiel.
Tools, macro, visual basic editor, lezenquote:Op dinsdag 20 januari 2009 17:13 schreef sobriquet het volgende:
Wauw nice gedaan, Mag ik vragen hoe je dit hebt gedaan? En als ik een nieuwe naam en een nieuw voorwerp heb, Hoe krijg ik die toegevoegd aan dat schema?
Doet ie vanzelf. Als jij een voorwerp of naam gewoon rechts of onder toevoegt, zal de macro er ook voor checken in Blad1.quote:Op dinsdag 20 januari 2009 17:13 schreef sobriquet het volgende:
Wauw nice gedaan, Mag ik vragen hoe je dit hebt gedaan? En als ik een nieuwe naam en een nieuw voorwerp heb, Hoe krijg ik die toegevoegd aan dat schema?
Maar als je alleen blad 1 hebt is er nog geen code om de matrix te maken waar de namen en items nog in moeten komen.quote:Op dinsdag 20 januari 2009 22:07 schreef DaFan het volgende:
[..]
Doet ie vanzelf. Als jij een voorwerp of naam gewoon rechts of onder toevoegt, zal de macro er ook voor checken in Blad1.
Moet dat dan?quote:Op dinsdag 20 januari 2009 23:41 schreef Deetch het volgende:
[..]
Maar als je alleen blad 1 hebt is er nog geen code om de matrix te maken waar de namen en items nog in moeten komen.
maw, als er een nieuwe naam bijkomt op blad1 zal de matrix niet automatisch aangevuld worden.
Dat komt omdat de opmaak nog steeds Tekst of Standaard is. De opmaak moet veranderd worden naar Datum/Tijdquote:Op woensdag 21 januari 2009 12:41 schreef Flaccid het volgende:
=LEFT(A1,2) & ":" & RIGHT(A1,2) & ":00"
Doet het niet. Engels versie heb ik.
Heb 2 apparte dingetjes gemaakt, per kolom.quote:Op woensdag 21 januari 2009 12:45 schreef qu63 het volgende:
[..]
Dat komt omdat de opmaak nog steeds Tekst of Standaard is. De opmaak moet veranderd worden naar Datum/Tijd
En je komt ook in de knoop als er tijden staan als 645, want dan maakt ie er 64:45:00 van
Ach zo ja ik snap hem.quote:Op woensdag 21 januari 2009 12:37 schreef DaFan het volgende:
[..]
Moet dat dan?
Ik kan natuurlijk maken dat blad2 gebouwd wordt op basis van wat er op blad1 staan, maar dan is de informatie dus niet volledig. Stel dat naam 'Deetch' met voorwerp 'Koelkast' nooit voorkomt in de lijst in Blad1, dat wil hij ws ook wel graag weten.
knippen en dan plakken speciaal, waarden in het menu bewerkenquote:Op woensdag 21 januari 2009 13:10 schreef Flaccid het volgende:
[..]
Heb 2 apparte dingetjes gemaakt, per kolom.
Ik heb nu in een apparte sheet een mooie kolom, gemaakt uit formules. nu wil ik de werkelijk data die er ook in staat kopieren, dus niet de formules erachter. Knip plak werkt niet.
of rechtermuisknop -> plakken speciaal -> waardenquote:Op woensdag 21 januari 2009 13:38 schreef Deetch het volgende:
[..]
knippen en dan plakken speciaal, waarden in het menu bewerken
Hij had het over 70 namen met 100 voorwerpen, dat zijn dus 7000 regels? Misschien dubbel ofzo, maar an sich maakt het mij niet uit waar de oplossing voor gebruikt wordt, als het maar werkt.quote:Op woensdag 21 januari 2009 13:38 schreef Deetch het volgende:
[..]
knippen en dan plakken speciaal, waarden in het menu bewerken
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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | 'rListSource is column of unsorted duplicate entries which is transformed 'into a new list in either column or row starting from rListPaste range 'of sorted unique entries Dim rListSource, rListPaste, AllCells, Cell As Range Dim NoDupes As New Collection Dim i As Integer, j As Integer Dim colm As String Set rListSource = Application.InputBox _ (Prompt:="Please select the source column", Type:=8) colm = Mid(rListSource.Address, 2, 1) Set rListPaste = Application.InputBox _ (Prompt:="Please select the destination cell", Type:=8) If rListPaste Is Nothing Then iReply = MsgBox("No range nominated," _ & " terminate", vbYesNo + vbQuestion) If iReply = vbYes Then Exit Sub End If ' Define range of items, assuming first row is headertext Set AllCells = Range(colm & "2", Range(colm & "65536").End(xlUp)) ' The next statement ignores the error caused ' by attempting to add a duplicate key to the collection. ' The duplicate is not added - which is just what we want! On Error Resume Next For Each Cell In AllCells NoDupes.Add Cell.Value, CStr(Cell.Value) ' Note: the 2nd argument (key) for the Add method must be a string Next Cell ' Resume normal error handling On Error GoTo 0 ' Sort the collection For i = 1 To NoDupes.Count - 1 For j = i + 1 To NoDupes.Count If NoDupes > NoDupes(j) Then Swap1 = NoDupes Swap2 = NoDupes(j) NoDupes.Add Swap1, before:=j NoDupes.Add Swap2, before:=i NoDupes.Remove i + 1 NoDupes.Remove j + 1 End If Next j Next i 'placing unique dataset in either a column or a row starting at first cel of selected range Application.Worksheets(rListPaste.Worksheet.Name).Activate rListPaste.Activate rListPaste.Select row_or_col = MsgBox("Put unique list in column (YES) or row (NO)?", vbYesNoCancel + vbDefaultButton1) If row_or_col = vbYes Then For i = 1 To NoDupes.Count ActiveCell.Offset(i - 1, 0) = NoDupes Next i ElseIf row_or_col = vbNo Then For i = 1 To NoDupes.Count ActiveCell.Offset(0, i - 1) = NoDupes Next i ElseIf row_or_col = vbCancel Then Exit Sub End If End Sub |
Met wat? Macro of gewoon?quote:Op woensdag 21 januari 2009 15:21 schreef Flaccid het volgende:
Hoe kan ik cellen deselecteren?
Euh? Is dat voor mij? .quote:Op woensdag 21 januari 2009 15:19 schreef Deetch het volgende:
Onderstaande code maakt op sheet 2 een unieke lijst (in een kolom of rij) van kolom A van de active sheet.
[ code verwijderd ]
let op dat blauwe informatie icoontje is gewoon ( i ) (zonder spaties
Selecteer alle cellen die je wilt kunnen inklappen en kies dan Data > Overzicht > Groeperen.quote:Op woensdag 21 januari 2009 15:18 schreef Insomaniac het volgende:
Iksnaphetniet.
Excel 2003 NL versie.
In kolom A heb ik schermnamen staan en in kolom B de veldnamen van de betreffende schermen. Omdat sommige schermen hoerenveel velden hebben, wil ik deze lijsten in- en uit kunnen klappen met zo'n plusteken, maar ik weet niet hoe. (Ik wil er dus geen dropdownlijst in een cel van maken, ik wil gewoon dat gedeelte van het werkblad (dus ook de kolommen er achter) in en uit kunnen klappen.)
Help me alsjeblieft. . Oh en ik weet niets van excel, dus praat alsjeblieft tegen me alsof ik een kleuter ben.
Yesh! Dat was wat ik zocht!quote:Op woensdag 21 januari 2009 15:37 schreef Frollo het volgende:
[..]
Selecteer alle cellen die je wilt kunnen inklappen en kies dan Data > Overzicht > Groeperen.
Neuh was voor sobriquetquote:
Control inhouden werkt niet. Ik selecteer een kolom, maar ik wil mijn header (titel voor kolom) er niet bij houden.quote:Op woensdag 21 januari 2009 15:23 schreef DaFan het volgende:
[..]
Met wat? Macro of gewoon?
Ctrl ingedrukt houden en dan klikken?
Vanaf 2e rij Ctrl+Shift+Pijltje naar beneden.quote:Op woensdag 21 januari 2009 16:26 schreef Flaccid het volgende:
[..]
Control inhouden werkt niet. Ik selecteer een kolom, maar ik wil mijn header (titel voor kolom) er niet bij houden.
quote:Op woensdag 21 januari 2009 16:27 schreef DaFan het volgende:
[..]
Vanaf 2e rij Ctrl+Shift+Pijltje naar beneden.
Ok thnx, alleen ik heb geen id hoe ik zoiets nou moet gebruiken. Ik krijg het bij dat andere script ook niet voor elkaar, als ik wat nieuws intyp naam en voorwerp komt er geen kruisje in sheet 2. Of moet ik em erst activeren ofzo.quote:Op woensdag 21 januari 2009 15:19 schreef Deetch het volgende:
Voor sobriquet
Onderstaande code maakt van een geselecteerde ongesorteerde kolom op de geselecteerde sheet een nieuwe lijst (in een kolom of rij) van unieke items.
[ code verwijderd ]
let op dat blauwe informatie icoontje is gewoon ( i ) (zonder spaties)
Ehm gewoon nog een keer op de knop drukken zou moeten werken?quote:Op woensdag 21 januari 2009 17:07 schreef sobriquet het volgende:
[..]
Ok thnx, alleen ik heb geen id hoe ik zoiets nou moet gebruiken. Ik krijg het bij dat andere script ook niet voor elkaar, als ik wat nieuws intyp naam en voorwerp komt er geen kruisje in sheet 2. Of moet ik em erst activeren ofzo.
Ah ik zie het al in de onderste regel en meeste rechtse kolom van het schema pakt die em niet.quote:Op woensdag 21 januari 2009 17:11 schreef DaFan het volgende:
[..]
Ehm gewoon nog een keer op de knop drukken zou moeten werken?
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Hoe kan ik makkelijk een diagram hiervan maken? Die de aantallen telt.
window, freeze panes en dan het knopje in de bevroren cellen plakken.quote:Op woensdag 21 januari 2009 17:35 schreef sobriquet het volgende:
[..]
Ah ik zie het al in de onderste regel en meeste rechtse kolom van het schema pakt die em niet.
Is er ook een manier om dat testknopje meer naar rechts te verplaatsen? En dat die meebeweegt als je naar beneden scrollt?
met die code maak je van je eerste sheet een lijst met uniek namen of items die je dan kunt gebruiken om die matrix op te bouwen. Vervolgens vul je met de macro van DaFan deze matrix.quote:Op woensdag 21 januari 2009 17:07 schreef sobriquet het volgende:
[..]
Ok thnx, alleen ik heb geen id hoe ik zoiets nou moet gebruiken. Ik krijg het bij dat andere script ook niet voor elkaar, als ik wat nieuws intyp naam en voorwerp komt er geen kruisje in sheet 2. Of moet ik em erst activeren ofzo.
Goed idee. Al kan je geen reference maken naar andere worksheets met conditional formattingquote:Op donderdag 22 januari 2009 13:35 schreef DaFan het volgende:
Ga naar Conditional formatting en gebruik als formule om te checken:
=MATCH(<cel>,B1:B10,0)
En die maak je groen. Je kan dan om het rood te kleuren de achtergrond standaard rood maken.
Ik denk dat ik Range("B1:D1") moet gebruiken en Selection.AutoFill, maar het is nog niet gelukt.quote:Sub lastrow1()
Dim lastrow As Long
lastrow = Worksheets("Blad1").Range("A1").End(xlDown).Row
Range("B1").Select
ActiveCell.AutoFill Destination:=Range("B1:B" & lastrow&)
End Sub
Volgens mij kan je gewoon met rechtermuisknop op de staaf zelf de kleur aanpassen.quote:Op donderdag 22 januari 2009 14:27 schreef Flaccid het volgende:
Ik heb nu een mooie pivottable. Bijna precies wat ik wil. Ik heb nu man en vrouw in een mooie zelfde grafiek. Die met paren naast elkaar staan. Nu wil ik de vrouw een andere kleur geven dan de man (de staaf zegmaar). (het is een staafgrafiek). Hoe krijg ik dat voor elkaar?
Kan ik bij die Sigma values ook filteren? Dat ik Want ik heb dus mannen en vrouwen in dezelfde kolom, maar die krijg ik niet appart.
1 2 3 | ActiveCell.AutoFill Destination:=Range("C1:C" & lastrow&) |
Moet ik die dan zelf maken of zou hij ertussen moeten staan...???quote:Op zondag 25 januari 2009 15:28 schreef qu63 het volgende:
Aangepast: [uu]:mm
rechtermuisknop, celeigenschappen, tabblad getal, kies voor aangepast, en dan onder "type:" in dat invulvakje [uu]:mm invullenquote:Op zondag 25 januari 2009 15:36 schreef FFnog het volgende:
[..]
Moet ik die dan zelf maken of zou hij ertussen moeten staan...???
Want ertussen staat ie niet iig...
En als ik hem zelf probeer te maken begint excel te protesteren...
De getalnotatie die u intypt is ongeldig...quote:Op zondag 25 januari 2009 15:39 schreef qu63 het volgende:
[..]
rechtermuisknop, celeigenschappen, tabblad getal, kies voor aangepast, en dan onder "type:" in dat invulvakje [uu]:mm invullen
quote:Op zondag 25 januari 2009 15:40 schreef FFnog het volgende:
En als ik bij aangepast h:mm doe dan telt hij maar weer tot 24:00 uur op...
dan moet je kiezen voor [hh]:mmquote:Op zondag 25 januari 2009 15:44 schreef FFnog het volgende:
[..]
De getalnotatie die u intypt is ongeldig...
Gebruik een van de ingebouwde getalnotaties...
Ja, dat werkt inderdaad. Dat was ik nog vergeten te vermelden.quote:Op zondag 25 januari 2009 15:03 schreef DaFan het volgende:
Ten eerste zou ik niet gebruiken End(xlDown) omdat dan A1 per se gevuld moet zijn. Makkelijker (vind ik, als dit werkt moet je het gewoon laten staan) is denk ik Range("65536").End(xlUp).Row.
En klinkt misschien stom maar als je gewoon hetzelfde trucje bij C1 en D1 doet?
[ code verwijderd ]
En dat ook voor D?
quote:Sub Macro1()
Dim Rng As Long
Rng = Range("A" & Rows.Count).End(xlUp).Row
With Sheets("Blad1")
.Range("B1:B" & Rng).FillDown
.Range("C1:C" & Rng).FillDown
End With
End Sub
Zelf intikken dus :quote:
quote:Op zondag 25 januari 2009 15:39 schreef qu63 het volgende:
[..]
rechtermuisknop, celeigenschappen, tabblad getal, kies voor aangepast, en dan onder "type:" in dat invulvakje [uuhh]:mm invullen
Denk dat het makkelijker is om de data 2x te plotten, 1x als percentage, en dan een tweede keer op een 2e Y-as, die je later verbergt én waarbij je de staven onzichtbaar maakt.quote:Op maandag 26 januari 2009 13:36 schreef Flaccid het volgende:
Is het mogelijk om in Excel de percentages te laten zien in een grafiek, maar als data label de eigenlijke waarde?
Lukt me niet iig.quote:Op maandag 26 januari 2009 13:42 schreef DaFan het volgende:
[..]
Denk dat het makkelijker is om de data 2x te plotten, 1x als percentage, en dan een tweede keer op een 2e Y-as, die je later verbergt én waarbij je de staven onzichtbaar maakt.
Maar ik zal het wel even proberen of het kan zonder zo'n omweg.
Owja sorry. Ik heb 2 rijen maar ik weet niet hoe ik 2 dataseries moet plotten. En hoe verberg ik een dataserie?quote:Op maandag 26 januari 2009 13:58 schreef DaFan het volgende:
Wat lukt niet, het maken van de grafiek zelf uit de pivottable of iets anders? En welke versie heb je ook alweer? Beetje meer informatie zou wel handig zijn
Als de cijfers altijd 3 karakters zijn dan wel. Of 2 karakters. Anders weet ik het niet.quote:Op maandag 26 januari 2009 14:43 schreef BuupWerk het volgende:
Ik heb straat en huisnummer in 1 cel staan hoe kan ik dit splitsen over 2 cellen...toch niet met de hand toch ??
Deze formule had DaFan voor mij geschreven. Hij werkte echter niet goed en inmiddels ben ik er achter waar dit aan ligt. Ik laat cijfers beoordelen die een gemiddelde zijn van enkele toetsen. Het gemiddelde is dan bijvoorbeeld een 7,25. Doordat ik in de kolom voor het gemiddelde niet met decimalen werk wordt dit afgerond op een 7. Je zou verwachten dat er dan uit de formule een RV (ruim voldoende) rolt. Dit gebeurd echter niet, hij geeft alleen een U (uitmuntend). Als het gemiddelde op een mooi rond getal uitkomt geeft de formule wel de juiste letter weer.quote:Op woensdag 3 december 2008 00:37 schreef DaFan het volgende:
In deze formule staat in A1 het eindcijfer. Dit dien je dus aan te passen naar welke cel je het wil van doen (bv G3 of F3). Hou er rekening mee dat als je hem bv in H3 zet voor het cijfer van F3, dat je m dan door kan trekken naar beneden voor andere leerlingen!
=ALS(EN(A1>=0;A1<5);"O";ALS(A1=5;"T";ALS(A1=6;"V";ALS(A1=7;"RV";ALS(A1=8;"G";ALS(A1=9;"ZG";"U"))))))
Ken je VERT.ZOEKEN helemaal niet?quote:Op woensdag 28 januari 2009 15:49 schreef Schanulleke het volgende:
Dit ontgaat me een beetje.
Ik zet een hulptabel op een plek onder het sheet wat ik eigenlijk gebruik?
En ik verwijs daarnaar door de cel linksboven en rechtsonder te definieren?
Als je de =x vervangt door <x+1 zou het wel kunnen werken toch?quote:Op woensdag 28 januari 2009 14:21 schreef Schanulleke het volgende:
[..]
Deze formule had DaFan voor mij geschreven. Hij werkte echter niet goed en inmiddels ben ik er achter waar dit aan ligt. Ik laat cijfers beoordelen die een gemiddelde zijn van enkele toetsen. Het gemiddelde is dan bijvoorbeeld een 7,25. Doordat ik in de kolom voor het gemiddelde niet met decimalen werk wordt dit afgerond op een 7. Je zou verwachten dat er dan uit de formule een RV (ruim voldoende) rolt. Dit gebeurd echter niet, hij geeft alleen een U (uitmuntend). Als het gemiddelde op een mooi rond getal uitkomt geeft de formule wel de juiste letter weer.
Kennelijk is het weglaten van de decimalen in de rapportcijferskolom niet hetzelfde als afronden op hele getallen waardoor het uitkomt op U.
Wat is het gemakkelijkste: de formule aanpassen zodat deze telkens een bereik beslaat (tussen 4,5 en 5,4 is M, tussen 5,5 en 6,4 is V etc.) of is het makkelijker om de 'formule' waarmee ik nu de rapportcijfergemiddeldes uitreken te laten afronden op helen?
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 | Do Y = Range("F12") Set r1 = Range("B" & X & ":E" & X) Set r2 = Range("A" & X) r2.Select ActiveCell.FormulaR1C1 = "Actie " & X r1.Select Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone With Selection.Borders(xlEdgeLeft) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeTop) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeBottom) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeRight) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlInsideVertical) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Application.DisplayAlerts = False X = X + 1 Loop While X < Y ' Sheets("temp").Delete Application.DisplayAlerts = True |
1 |
1. eerste cel 5, tweede cel 10, cellen 1 en 2 selecteren en dan zwarte blokje met muis pakken en naar beneden doorslepen.quote:Op donderdag 29 januari 2009 16:19 schreef Platina het volgende:
Hey mensen, ik heb morgen een tentamen Excel (2003 ) en heb een paar vraagjes. Als iemand mij ermee kan helpen zou dat fijn zijn
1. Ik heb te maken met een beginwaarde: 5. In ieder onderliggende cel wordt er 5 bij opgeteld. Is er een manier waarop Excel dit kan doen zonder gebruik te maken van een formule? want de uiteindelijke cel heb ik nodig bij Doelzoeken. Ik heb nu deze formule die dus niet voldoet: A2 = A1+5, met A1 = 5.
2a. Ik heb een lijngrafiek moeten maken. De waardes op de Y-as moeten lopen van niks tot 5.000 met stappen van 1000. Nu lukt dit me wel maar onderaan moet ipv ¤ 0,00 ---------> ¤ - komen te staan.
2b. Op de X-as heb ik een soortgelijk probleem. Ik wil daar graag stappen van 20.000 maken tot 80.000 totaal en beginnend bij 0. Maar wat ik ook probeer ik krijg er geen getallen te staan.
Indien nodig kan ik de gegevens laten zien aangezien dit een oefentoets omvat (helaas zonder antwoorden).
Nope al geprobeerd maar werkt nietquote:Op donderdag 29 januari 2009 17:49 schreef Deetch het volgende:
[ code verwijderd ]
Jaheur: zet er eens ".value" achter.
Dat is wel het probleem volgens mij. Werkt bij mij nl. dan welquote:
Marco schrijven waarbij je door de kolommen heen loopt (do loop):quote:Op vrijdag 30 januari 2009 15:53 schreef Jaheur het volgende:
Ik heb dan een hele lastige:
Ik heb een range van A1 tot G10 (voorbeeld) in de kolommen kunnen X voorkomen, maar sommige cellen zijn leeg, maar soms kunnen er dubbelen X-en voorkomen. Hoe kan ik dit vereenvoudigen dus bijvoorbeeld
A1:A10 is gelijk aan D1:D10 dus de hele kolom van D mag verwijderd worden, maar deze vergelijking is wel random want A kan net zo goed B zijn. De vergelijking moet wel over de hele kolom gaan.
Hé, da's handigquote:Op vrijdag 30 januari 2009 18:22 schreef dragonrider het volgende:
dddd gebruiken bij celeigenschappen, dus iets van dddd, mmm-dd-jjjj
Ja zoiets bedoel ik.quote:Op vrijdag 30 januari 2009 16:08 schreef Metal_Jag het volgende:
[..]
Marco schrijven waarbij je door de kolommen heen loopt (do loop):
Dan sla je kolom 1 op in en variabele (zeg X = vector), vervolgens ga je naar kolom 2 en vergelijk je die met de opgeslagen kolom. Als die gelijk is, sla je het kolomnummer (andere variabele, zeg Y(j)) op. Is ie niet gelijk, sla je kolom 2 ook op in X(i+1) Dan verder naar de volgende kolom, die je telkens controleert en opslaat in X of in Y(j):
- komt ie overeen met een vector uit X dan onthoud je het kolomnummer in Y(j)
- komt ie niet overeen, dan sla je em op in X
Aan het einde verwijder je alle kolommen in Y.
Zoiets?
Ik heb een oudere NL versie en daar kan het zo:quote:Op dinsdag 3 februari 2009 13:40 schreef static het volgende:
Ik heb een hondertal rijen met data, waarvan 'één kolom een datum/tijdsaanduiding is (2009-02-02 14:26:06); nu wil ik in de kolom ernaast automatisch het uurslot invullen (in dit geval 14:00-15:00) hoe kan ik dat het gemakkelijks (automatisch) doen? Het werkje komt dagelijks voor dus van handmatig word ik gillend gek. De data wil ik daarna opnemen in een pivot (al zal dat het makkelijkste zijn).
Excel 2007 UK.
=HOUR(A1) & ":00 - " & HOUR(A1)+1 & ":00"quote:Op dinsdag 3 februari 2009 14:27 schreef static het volgende:
Dat werkt als een trein, thanks!
Nog een schoonheidsvraagje: hoe krijg ik het in dit formaat: 11:00-12:00? Nu is het 11-12.
Graag gedaanquote:
Goed bedacht hequote:
In de grafiek de getallen handmatig invoeren?quote:Op dinsdag 3 februari 2009 20:43 schreef elkravo het volgende:
Ik heb in een aantal cellen getallen gezet.
Van deze getallen heb ik een grafiek gemaakt.
Een aantal cijfers in een bepaalde kolom wil ik verbergen. Maar de grafiek moet die getallen wel "gebruiken". Echter als ik de kolom verberg verandert de grafiek doordat de cijfers niet gebruikt worden.
Is dit op te lossen?
Een elegante oplossing heb ik niet, maar maak een 2e tabblad met celverwijzigen naar het eerste tabblad en baseer je grafiek op het 2e tabblad, zodat je in tabblad 1 gerust rijen kunt verbergen.quote:Op dinsdag 3 februari 2009 20:43 schreef elkravo het volgende:
Ik heb in een aantal cellen getallen gezet.
Van deze getallen heb ik een grafiek gemaakt.
Een aantal cijfers in een bepaalde kolom wil ik verbergen. Maar de grafiek moet die getallen wel "gebruiken". Echter als ik de kolom verberg verandert de grafiek doordat de cijfers niet gebruikt worden.
Is dit op te lossen?
Volgens mij wil hij ook automatisch unieke waarden zoeken. Dat maakt het lastig. Misschien draaitabel ? (daar heb ik de ballen verstand van)quote:Op woensdag 4 februari 2009 18:34 schreef DaFan het volgende:
Ik neem aan dat je A/B/C gewoon handmatig invoert in kolom F?
Dan wordt G2:
=COUNTIF($A$2:$C$7,F2)
of
=AANTAL.ALS($A$2:$C$7;F2)
En dat naar beneden trekken.
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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | 'rListSource is column of unsorted duplicate entries which is transformed 'into a new list in either column or row starting from rListPaste range 'of sorted unique entries Dim rListSource, rListPaste, AllCells, Cell As Range Dim NoDupes As New Collection Dim i As Integer, j As Integer Dim colm As String Set rListSource = Application.InputBox _ (Prompt:="Please select the source column", Type:=8) colm = Mid(rListSource.Address, 2, 1) Set rListPaste = Application.InputBox _ (Prompt:="Please select the destination cell", Type:=8) If rListPaste Is Nothing Then iReply = MsgBox("No range nominated," _ & " terminate", vbYesNo + vbQuestion) If iReply = vbYes Then Exit Sub End If ' Define range of items, assuming first row is headertext Set AllCells = Range(colm & "2", Range(colm & "65536").End(xlUp)) ' The next statement ignores the error caused ' by attempting to add a duplicate key to the collection. ' The duplicate is not added - which is just what we want! On Error Resume Next For Each Cell In AllCells NoDupes.Add Cell.Value, CStr(Cell.Value) ' Note: the 2nd argument (key) for the Add method must be a string Next Cell ' Resume normal error handling On Error GoTo 0 ' Sort the collection For i = 1 To NoDupes.Count - 1 For j = i + 1 To NoDupes.Count If NoDupes > NoDupes(j) Then Swap1 = NoDupes Swap2 = NoDupes(j) NoDupes.Add Swap1, before:=j NoDupes.Add Swap2, before:=i NoDupes.Remove i + 1 NoDupes.Remove j + 1 End If Next j Next i 'placing unique dataset in either a column or a row starting at first cel of selected range Application.Worksheets(rListPaste.Worksheet.Name).Activate rListPaste.Activate rListPaste.Select row_or_col = MsgBox("Put unique list in column (YES) or row (NO)?", vbYesNoCancel + vbDefaultButton1) If row_or_col = vbYes Then For i = 1 To NoDupes.Count ActiveCell.Offset(i - 1, 0) = NoDupes Next i ElseIf row_or_col = vbNo Then For i = 1 To NoDupes.Count ActiveCell.Offset(0, i - 1) = NoDupes Next i ElseIf row_or_col = vbCancel Then Exit Sub End If End Sub |
Welke versie? In 2007 lukt het prima.quote:Op donderdag 5 februari 2009 14:22 schreef BuupWerk het volgende:
Weer een vraagje...
Als ik een cel wil kantelen zeg maar 45 graden dan gaat dat BEST maar als ik een samengevoegde cel wil kantelen NIET iemand een oplossing ??
de help van excel gebruiken doet ook wonderenquote:Op donderdag 5 februari 2009 15:05 schreef DaFan het volgende:
=VERT.ZOEKEN(A1,Sheet1!A1:B1000,2,0)
Dat is de 2e kolom ophalen. Als je de derde kolom wil ophalen moet je tot C1000 zoeken en de 2 in een 3 veranderen.
quote:Op donderdag 5 februari 2009 15:08 schreef Deetch het volgende:
[..]
de help van excel gebruiken doet ook wonderen
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
quote:Op donderdag 5 februari 2009 15:08 schreef Deetch het volgende:
[..]
de help van excel gebruiken doet ook wonderen
quote:Op donderdag 5 februari 2009 15:08 schreef Deetch het volgende:
[..]
de help van excel gebruiken doet ook wonderen
Ik pas ...quote:Op maandag 9 februari 2009 12:27 schreef ManAtWork het volgende:
In Excel (2007) heb ik de formule ZELFDE.DAG()
Hier kun je het aantal maanden bij de startdatum optellen.
Nu heb ik (in Word) een VB-formulier waarin zowel de begindatum als het aantal maanden wordt ingevuld.
Hoe krijg ik in (mijn bestaande) een macro dan de einddatum? Deze einddatum wordt weer in het Word-sjabloon ingevuld.
(Omdat er in Excel een functie voor is en ik aanneem dat de macro-code voor Excel en Word niet gek veel verschillen heb ik mijn vraag hier maar gepost in plaats van in het grote 'Word-vragen-topic' )
Op de voorgrond zetten ofzo?quote:Op maandag 9 februari 2009 13:21 schreef static het volgende:
Ik word er gierend gek van. Heb een grafiek (staaf) met daarnaast op de secundaire as twee lijn-diagrammen met een totaal per eenheid (datalabels). Die laatsen worden opeens niet meer weergegeven, ook al zet ik het uit, aan, weer uit, etc.
Iemand enig idee hoe dat te verhelpen?
http://www.pcreview.co.uk/forums/thread-959269.phpquote:The EDate function is part of the Analysis Tool Pak add-in. To use it in
VBA, you need to first load the "Analysis Tool Pak - VBA" add-in in Excel.
Then, open your VBA project, go to the Tools menu, choose Reference, and put
a check next to ATBVBAEN.xls item. Once you do this, you can access the
function directly. E.g.,
Dim Res
Res = edate(Now, 3)
Debug.Print Res
quote:Op maandag 9 februari 2009 12:49 schreef DaFan het volgende:
Weet je het Engelse equivalent van deze functie, ik kan hem niet vinden? Dan kan ik er wel wat mee.
quote:You can use the EDATE function to determine a date a number of months in the past or future. This function is part of the Analysis ToolPak. (This tip works with Microsoft Excel 97, Excel 2000, Excel 2002, Excel 2003, and Excel 2007.)
Je was dus even iets sneller. En Fok! had het te druk om mijn post te plaatsen.quote:Op maandag 9 februari 2009 13:50 schreef DaFan het volgende:
ManAtWork:
[..]
http://www.pcreview.co.uk/forums/thread-959269.php
Edate is de Engelse equivalent van Zelfde.dag en kan dus op deze manier in VBA worden toegepast.
Weet iemand al wat? Ik kom er echt niet uit :xquote:Op vrijdag 30 januari 2009 15:53 schreef Jaheur het volgende:
Ik heb dan een hele lastige:
Ik heb een range van A1 tot G10 (voorbeeld) in de kolommen kunnen X voorkomen, maar sommige cellen zijn leeg, maar soms kunnen er dubbelen X-en voorkomen. Hoe kan ik dit vereenvoudigen dus bijvoorbeeld
A1:A10 is gelijk aan D1:D10 dus de hele kolom van D mag verwijderd worden, maar deze vergelijking is wel random want A kan net zo goed B zijn. De vergelijking moet wel over de hele kolom gaan.
@Jaheurquote:
Uhm als bijvoorbeeld bij A1:A10 hetzelfde voorkomt als bij G1:G10 dan mag de gehele kolom G weg. Deze vergelijking en deleten moet doorgaan totdat er een lege kolom verschijnt.quote:Op maandag 9 februari 2009 14:39 schreef DaFan het volgende:
Dus je wil A1:A10 vergelijken met alle kolommen 1:10, en als ze exact identiek zijn (zeg 1 en 2 staan een X in, rest niet) dan kan de 2e kolom weg?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | LastColumn = Range("IV1").End(xlToLeft).Column LastRow = Range("A65536").End(xlUp).Row j = 1 For i = 1 To LastColumn For k = i + 1 To LastColumn If Cells(j, i).Value = Cells(j, k).Value Then For j = 1 To LastRow If j = LastRow Then Sheets("Sheet1").Columns(k).EntireColumn.Delete End If Next j End If Next k Next i End Sub |
Dit werkt dus wel voor een macro in Excel. Helaas krijg ik het in Word niet voor elkaar.quote:Op maandag 9 februari 2009 13:50 schreef DaFan het volgende:
ManAtWork:
[..]
http://www.pcreview.co.uk/forums/thread-959269.php
Edate is de Engelse equivalent van Zelfde.dag en kan dus op deze manier in VBA worden toegepast.
Bovenstaande krijg ik niet gedaan in VBA van Word.quote:Then, open your VBA project, go to the Tools menu, choose Reference, and put
a check next to ATBVBAEN.xls item.
Denk dat ik het daar inderdaad in moet gaan zoeken. Alleen zal ik ook te maken krijgen met jaren.quote:Op maandag 9 februari 2009 18:15 schreef DaFan het volgende:
Kan je niet door middel van Month(<datum >) de maand eruit trekken en daar het aantal maanden er bovenop tellen?
1 2 3 4 5 6 7 8 9 10 | Elist(0) = "nooit" Elist(1) = "zelden" Elist(2) = "soms" Elist(3) = "vaak" Me.lstE.List = Elist end sub |
1 2 | frmE.show |
moet het niet dit zijn:quote:Op dinsdag 10 februari 2009 13:32 schreef Deetch het volgende:
ik ben bezig een berekeningsformulier (frmE) te maken en nu wil ik een listbox vullen met vaste waarden (dus in de code) zonder ergens deze waarden in een excelsheet te moeten stoppen.
de lijst bestaat uit vier tekstregels:
"nooit"
"zelden"
"soms"
"vaak"
In het formulier heet de listbox lstE
Ik heb het al met de volgende code geprobeerd:
[ code verwijderd ]
Als ik dan met een macroknop de volgende code uitvoer
[ code verwijderd ]
krijg ik de foutmelding
"Runtime error 9", subscript out of range
wat doe ik fout?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Dim LegeCellen as Integer LegeCellen = 0 For each c in Range("A1:A10") If c.Value = "" Then LegeCellen = LegeCellen + 1 End If Next MsgBox LegeCellen End Sub |
inderdaadquote:Op dinsdag 10 februari 2009 13:35 schreef Metal_Jag het volgende:
[..]
moet het niet dit zijn:
lstE.AddItem ("Nooit")
.
.
.
lstE.Additem("Vaak")
??
Ja zoiets doe ik ook, maar ik dacht misschien kan het handiger. Thanx.quote:Op dinsdag 10 februari 2009 13:35 schreef DaFan het volgende:
Er is afaik geen direct statement (zoals in Excel wel), dus gebruik het volgende:
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | Set positie = Range("E2") UserForm1.Show End Sub Private Sub CommandButton2_Click() Set positie = Range("E3") UserForm1.Show End Sub Private Sub CommandButton3_Click() Set positie = Range("E4") UserForm1.Show End Sub ENZ ENZ ENZ x 140 |
Ik heb wel dit gevonden:quote:Op dinsdag 10 februari 2009 15:24 schreef DaFan het volgende:
Ik zit te denken of er geen procedure bestaat om achter de naam van het object te komen die de macro aanroept maar ik kan zo niks vinden. Dan kan je mbv die procedure het nummer vinden van het object en dan een offset toen tov E2.
Elke Sub die je nu hebt roept dan het 'hoofdsub' op, dus die hoef je dan maar 1x te schrijven + 140x de hoofdsub aanroepen.
Pixelsquote:Op woensdag 11 februari 2009 12:32 schreef DaFan het volgende:
Op welke manier komt Top en Left terug dan? Pixels of cellen?
Kan je niks mee dusquote:
Object toevoegen via toevoegen. Volgens mij kan je dan gewoon in een werkblad werken in Word.quote:Op zondag 15 februari 2009 11:11 schreef devuser_250 het volgende:
Een vraag,
Kan ik in Word een verwijzing maken naar een Excel-bestand?
Ik moet een enquete maken en ik wil de gegevens die ik ingeef in Word direct word omgezet in Excel om daarmee een grafiek maken.
Hoe kan ik hieraan aan beginnen?
Dat heb ik al geprobeerd en helaas zonder effect. Ik heb nu mijn instellingen veranderd, en nu begint de lijn bij X = 1 terwijl ik X = 0 wil hebben..quote:Op maandag 16 februari 2009 17:10 schreef DaFan het volgende:
Er staat me iets van bij met "Y-axis crosses at 0" (of iets dergelijks) dat je bij je grafiekopties aan of uit kan zetten. Dit bepaalt of de eerste waarde bij X = 0 staat of tussen X = 0 en X = 1 in ( X = 0.5 dus).
Dit is een XY grafiek, ik heb alleen de eigenschappen van het "uiterlijk" aangepast zodat er een lijn in zit. Ik heb een kolom 0 - 8 geprobeerd met daarachter de gegevens, ik heb het geprobeerd met 0 - 8 met daaronder de gegevens.. Ik ben op een gegeven moment gewoon maar gaan proberen, omdat ik het maar niet voor elkaar kreeg. Schijnbaar pakt ie de eerste van de tabel en noemt hij dat "1", ook al staat er in de tabel dat dat nul moet zijnquote:Op maandag 16 februari 2009 21:28 schreef Deetch het volgende:
Je moet er wel een XY grafiek van maken en geen lijn-grafiek.
Hoe ziet je tabel met data eruit? Heb je een kolom met 0 tm 8 en daarachter 3 kolommen met kosten opbrengsten en winst?
Ik vind het echt vreemd, want bij mij doet ie dat dus niet Ik heb nu wel de lijnen op de X-as gekregen, maar er staat nog steeds 1 onder en daar moet natuurlijk 0 staan.. *zucht*quote:Op maandag 16 februari 2009 21:52 schreef Deetch het volgende:
raar, in mijn excel doet ie het gewoon goed.
1 kolom met 0 tm 8 dan de andere drie kolommen erachter.
alle vier kolommen selecteren en een XY grafiek van maken en klaar ben je
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 | Dim inhoud As Variant Dim splitinhoud As Variant Dim location Dim arrLoc As Variant Dim Sep Dim i As Integer Close #1 arrLoc = range("S38:CH38") location = Application.GetOpenFilename(FileFilter:="Text File (*.txt),*.txt") Sep = "|" Open location For Input Access Read As #1 Line Input #1, inhoud splitinhoud = Split(inhoud, Sep) For Each i In arrLoc MsgBox i & vbCrLf & splitinhoud & " in " & arrLoc(1, i) range(arrLoc).Value = splitinhoud(i + 1) Next Close #1 End Sub |
klinkt niet echt als een excel vraag, probeer eens een eigen topic te starten in dig met een eigen duidelijke titel.quote:Op donderdag 19 februari 2009 14:54 schreef Blik het volgende:
Zijn er mensen hier bekend met Think-Cell of ASAP Utilities?
Als je er niet bekend mee bent, zeg dan gewoon niks. Het zijn tools die extra functionaliteit geven aan Excel i.c.m. powerpoint. Veel gebruikt bij grote consultancy/strategy bureaus.quote:Op donderdag 19 februari 2009 15:08 schreef Deetch het volgende:
[..]
klinkt niet echt als een excel vraag, probeer eens een eigen topic te starten in dig met een eigen duidelijke titel.
Maar je hebt dus niet echt een specifieke vraagquote:Op donderdag 19 februari 2009 16:18 schreef Blik het volgende:
[..]
Als je er niet bekend mee bent, zeg dan gewoon niks. Het zijn tools die extra functionaliteit geven aan Excel i.c.m. powerpoint. Veel gebruikt bij grote consultancy/strategy bureaus.
Ik ben benieuwd of mensen er bekend mee zijn en waarvoor ze die tools gebruiken
Klopt, dit is voor Fok!kers die met kleine problemen zitten en hiervoor hulp kunnen gebruiken van wat geavanceerderde gebruikers. Geen discussie topic over tools.quote:Op donderdag 19 februari 2009 16:43 schreef Blik het volgende:
Ik ga toch geen apart topic openen hiervoor, ben gewoon benieuwd of de excel-experts hier dat soort handige tools gebruiken. Daarvoor ben ik hier volgens mij in het juiste topique
preciesquote:Op donderdag 19 februari 2009 16:48 schreef DaFan het volgende:
[..]
Klopt, dit is voor Fok!kers die met kleine problemen zitten en hiervoor hulp kunnen gebruiken van wat geavanceerderde gebruikers. Geen discussie topic over tools.
Dus jij verwacht dat hier een Excel guru zit die met alle vragen over alle dingen die met Excel te maken hebben, overweg kan?quote:Op donderdag 19 februari 2009 17:21 schreef Blik het volgende:
Misschien moet de TT en OP dan veranderd worden, daar staat namelijk duidelijk dat je hier terecht kunt met al je vragen over Excel.
Ik weet er ook niks vanquote:Op donderdag 19 februari 2009 23:13 schreef DaFan het volgende:
Je mag het van mij prima vragen over de meest ingewikkelde dingen (zoals je al deed) maar ík (en Deetch) hebben er nog nooit van gehoord dus ik verwacht dat je dan hier weinig hulp/medestanders vindt.
Ik bedoelde je laatste regelquote:
Nee, wilde gewoon peilen of het gebruikt werd en hoe het gebruikt werd. Heb er verder geen problemen meequote:Op donderdag 19 februari 2009 23:50 schreef DaFan het volgende:
Misschien probeer ik het zelfs wel een keer Heb je er nog specifieke problemen mee of wou je gewoon peilen hoe het hier gebruikt werd?
1 |
achter het ' staat een opmerking die uitlegt wat die regel doetquote:Op vrijdag 20 februari 2009 11:20 schreef Errrwin het volgende:
Ik heb een Excelbestand (doh) en daarin staat in werkblad B een aantal kolommen+rijen met data á la
[ code verwijderd ]
Nu wil ik graag dat op werkblad A de hele rij komt te staan zodra op werkblad B in kolom C de waarde '401' staat.
Snappu?
Hoe doe ik dat? :)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | Sheets("Sheet2").Select 'sheet waar gesorteerde gegevens komen Range("a2").Select 'cel waar eerste gesorteerde rij komt Sheets("Sheet1").Select 'sheet waar ruwe data staat Range("C1").Select 'beginnen bovenaan kolom c For i = 1 To 100 'gaat eerste 100 regels bij langs If ActiveCell.Value = 401 Then 'te zoeken waarde ActiveCell.EntireRow.Select Selection.Copy Sheets("Sheet2").Select ActiveSheet.Paste ActiveCell.Offset(1, 0).Select End If Sheets("Sheet1").Select Range("C" & i).Select 'volgende cel in kolom c selecteren Next i End Sub |
Crap. Nog iets vergeten, er zijn 2 criteria! Dus in de regel code in m'n vorige post de '401' en de '69930'.quote:Op vrijdag 20 februari 2009 13:52 schreef Deetch het volgende:
[..]
achter het ' staat een opmerking die uitlegt wat die regel doet
[ code verwijderd ]
staat de 69930 altijd in kolom E?quote:Op vrijdag 20 februari 2009 14:34 schreef Errrwin het volgende:
[..]
Crap. Nog iets vergeten, er zijn 2 criteria! Dus in de regel code in m'n vorige post de '401' en de '69930'.
Kan je daar wat van brouwen, denk je?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Sheets("Sheet2").Select 'sheet waar gesorteerde gegevens komen Range("a2").Select 'cel waar eerste gesorteerde rij komt Sheets("Sheet1").Select 'sheet waar ruwe data staat Range("C1").Select 'beginnen bovenaan kolom c For i = 1 To 5000 'gaat eerste 5000 regels bij langs If ActiveCell.Value = 401 And ActiveCell.Offset(0, 2).Value = 69930 Then 'te zoeken waarde ActiveCell.EntireRow.Select Selection.Copy Sheets("Sheet2").Select ActiveSheet.Paste ActiveCell.Offset(1, 0).Select End If Sheets("Sheet1").Select Range("C" & i).Select 'volgende cel in kolom c selecteren Next i Application.CutCopyMode = False 'deseleteerd de laatste gekopieerde regel (stippellijntje weg) End Sub |
1 2 | Range("C" & i).Select 'volgende cel in kolom c selecteren |
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 | Dim i,j As Integer Sheets("Blad1").Select i = 0 j = 0 Do i = i + 1 If Cells(i, 3).Value = "401" And Cells(i, 5).Value = "69930" Then j = j + 1 Cells(i, 4).EntireRow.Copy Sheets("Blad2").Activate ActiveSheet.Cells(j, 1).Select ActiveSheet.Paste Sheets("Blad1").Activate End If Loop Until Cells(i, 3).Value = "" Range("A1").Select Application.CutCopyMode = False End Sub |
quote:Op maandag 23 februari 2009 12:14 schreef Jaheur het volgende:
Ik heb de macro, maar hoe ik van een formule een enkele getal maken in de macro.
Dus geen "=MAX(5;5;2;2;5;3;3;2)" als uitkomst, maar enkel 5.
1 |
1 |
Ik heb helaas geen tijd om hele scripts te schrijven, maar ik heb wel een hersenspinsel hierover. Waarschijnlijk loopt de volgende code nog gigantisch vast, maar het is een beginnetje:quote:
1 2 3 4 5 6 7 8 9 10 11 12 | i = 0 Do i = i + 1 If Cells(i, 3).Value < Cells(i + 1, 2).value Then Cells(i, 3).Value = Cells(i + 1, 3).Value Cells(i + 1, 1).EntireRow.Delete i = i - 1 End If Loop Until Cells(i + 1, 1).Value = "" End Sub |
Thanksquote:Op maandag 23 februari 2009 13:07 schreef Metal_Jag het volgende:
Ik heb helaas geen tijd om hele scripts te schrijven, maar ik heb wel een hersenspinsel hierover. Waarschijnlijk loopt de volgende code nog gigantisch vast, maar het is een beginnetje:
[ code verwijderd ]
Als je met conditional formatting niet die waardes op "wit" zet, zie je ze dan nog bij het printen?quote:Op maandag 23 februari 2009 14:45 schreef Stansfield het volgende:
Even een vraag over het printen van excel. Wanneer ik 0 waarden en foute formulles als deel/0 niet wil laten zien wanneer ik print hoe regel ik dat in excel 2007 de nederlandse versie.
Dat is niet handig want het beslaat een heleboel formulies die er al staan maar de info is nog niet gevuld. Elke maand komt er dan een stukje bij. Dus dan blijf ik aan de gang.quote:Op maandag 23 februari 2009 15:35 schreef DaviniaHR het volgende:
[..]
Als je met conditional formatting niet die waardes op "wit" zet, zie je ze dan nog bij het printen?
(speaking of quick and dirty )
Heb je mijn script nog gebruikt?quote:Op maandag 23 februari 2009 15:04 schreef FJD het volgende:
[..]
Thanks
Na een tip van een vriend ben ik de hele dag aant knutselen geweest en t werkt nu bijna. Tis wss een enorme dirty manier maar t hoeft toch maar 1x te werken
Voordat je de beveiliging aanzet, moet je de cellen deblokkeren die bewerkbaar moeten blijven. Als dat voor alle cellen geldt ben je snel klaar: Ctrl+A, Ctrl+1, tabblad Beveiliging, Geblokkeerd uitzetten.quote:Op dinsdag 24 februari 2009 13:09 schreef Jaheur het volgende:
Is het mogelijk om door middel van een wachtwoord een blad te beveiligen op deleting van rows en columns, maar de inhoud van een cel wel bewerkbaar laten zijn?
De standaard mogelijkheid van werkblad beveiligen kan dit niet.
Nope, was al zo'n eind onderweg Ik zit je code even door te lezen en waar ie denk ik de mist ingaat is als er een nieuw ritnummer komt met een overlappend timeframe. Op dat moment worden de tijden gewoon aangepast terwijl dat dan juist weer niet mag gebeurenquote:[b]Op dinsdag 24 februari 2009 08:24 schreef Metal_Jag het volgende:[/b
Heb je mijn script nog gebruikt?
Nope. Elk aandeel komt maar 1x voor.quote:Op maandag 23 februari 2009 08:42 schreef Metal_Jag het volgende:
Kan in het 2e bestand een op een of andere manier aandeel 2x voorkomen?
abn 1 3 5 6 7
fortis 12 12 12 5
abn 2 2 2 2 2
?
Zet de volgende code in de script-editor bij "Microsoft Excel-objecten" achter "Blad1"quote:Op dinsdag 24 februari 2009 15:14 schreef Jaheur het volgende:
Thnx met dat andere zal ik er wel uitkomen, maar helaas heb ik nog wat.
Heeft er misschien iemand een scriptje wat hetzelfde doet als voorwaardelijke opmaak, maar dan met een macro en die naar een ander tabblad kan? Ik heb dus een validatielijst en ik wil daar met een voorwaardelijke opmaak werken, maar de gegevens staan op een ander werkblad oftwel, voorwaardelijke opmaak werkt dan niet.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | If Range("A1").Value > Sheets("Blad2").Range("A1").Value Then Range("A1").Interior.ColorIndex = 15 Else Range("A1").Interior.ColorIndex = xlNone End If End Sub Private Sub Worksheet_Change(ByVal Target As Range) If Range("A1").Value > Sheets("Blad2").Range("A1").Value Then Range("A1").Interior.ColorIndex = 15 Else Range("A1").Interior.ColorIndex = xlNone End If End Sub |
maak een gewone verwijzing, van blad x naar y, zodat je van die gewone verwijzing je opmaak afhankelijk kunt makenquote:Op dinsdag 24 februari 2009 15:14 schreef Jaheur het volgende:
Thnx met dat andere zal ik er wel uitkomen, maar helaas heb ik nog wat.
Heeft er misschien iemand een scriptje wat hetzelfde doet als voorwaardelijke opmaak, maar dan met een macro en die naar een ander tabblad kan? Ik heb dus een validatielijst en ik wil daar met een voorwaardelijke opmaak werken, maar de gegevens staan op een ander werkblad oftwel, voorwaardelijke opmaak werkt dan niet.
The sleazy way... kan ook eventueel met wit lettertype, zodat je het niet eens zietquote:Op dinsdag 24 februari 2009 16:30 schreef ralfie het volgende:
[..]
maak een gewone verwijzing, van blad x naar y, zodat je van die gewone verwijzing je opmaak afhankelijk kunt maken
erg onzinnig dat excel voorwaardelijke opmaak obv een ander tabblad niet toestaat btw.
quote:Op dinsdag 3 februari 2009 13:40 schreef static het volgende:
Ik heb een hondertal rijen met data, waarvan 'één kolom een datum/tijdsaanduiding is (2009-02-02 14:26:06); nu wil ik in de kolom ernaast automatisch het uurslot invullen (in dit geval 14:00-15:00) hoe kan ik dat het gemakkelijks (automatisch) doen? Het werkje komt dagelijks voor dus van handmatig word ik gillend gek. De data wil ik daarna opnemen in een pivot (al zal dat het makkelijkste zijn).
Excel 2007 UK.
quote:Op dinsdag 3 februari 2009 13:52 schreef Joooo-pi het volgende:
[..]
Ik heb een oudere NL versie en daar kan het zo:
=UUR(A1) & " - " & UUR(A1)+1
In Engels is de functie UUR gewoon HOUR.
DUS:
=HOUR(A1) & " - " & HOUR(A1)+1
zou moeten werken.
En nog een dergelijk verzoek; heb een kolom met tijden in hh:mm:ss formaat; nu wil ik graag hetzelfde als hierboven, maar nu bijvoorbeeld:quote:Op dinsdag 3 februari 2009 14:32 schreef qu63 het volgende:
[..]
=HOUR(A1) & ":00 - " & HOUR(A1)+1 & ":00"
Welke ranges wil je definieren?quote:Op woensdag 25 februari 2009 01:12 schreef static het volgende:
[..]
[..]
[..]
En nog een dergelijk verzoek; heb een kolom met tijden in hh:mm:ss formaat; nu wil ik graag hetzelfde als hierboven, maar nu bijvoorbeeld:
00:00:00
00:00:13
00:01:23
00:03:33
00:04:59
zou in de range van 00-05 moeten vallen (inclusief de 00:00:00), maar
00:06:27
00:09:01
00:05:01
zou in de range van 05-10 moeten vallen, maar ook (ja, ik ga nog even door )
01:10:28 zou in de range van 70-80 moeten vallen, etc.
Is dat simpel op te lossen?
Misschien meer een vraag over het OS. Je hebt het dan nl. over een los .xls bestand.quote:Op woensdag 25 februari 2009 11:45 schreef Hunky_Dory het volgende:
is het mogelijk om een excel bestand te beveiligen tegen emailen?
dit is het geval; ik heb een excel bestand met vertrouwelijke informatie. Deze heb ik beveiligd met een wachtwoord voor openen en lezen/schrijven. Omdat het personeel hier snel wisselt (seizoensbedrijf) heb ik liever niet dat het personeel die met deze informatie werkt het naar zichzelf kunnen sturen en zo na het seizoen nog toegang hebben tot deze info. Wel moet het mogelijk zijn om de informatie wijzigen en naar 1 mailadres te sturen.
beetje wazig verhaal, maar hoop dat het duidelijk is; wel wijzigen, mailen alleen mogelijk naar 1 adres.
hoop dat iemand een oplossing heeft!
thanx!
Ja maar waarom is die range 10 minuten en van 5 tot 10 maar 5 minuten? Daarom om vraag ik welke ranges je wilt definieren.quote:Op woensdag 25 februari 2009 09:43 schreef static het volgende:
In het voorbeeld 01:10:29 valt het binnnen de range van 70-80 minuten.
Misschien kun je bij het openen van het bestand een script laten lopen die iets unieks op jouw computer checkt (specifiek pad met bepaald beveiligd excel bestand met daarin controletekst). In dat script laat je jouw bestand sluiten als die check false is.quote:Op woensdag 25 februari 2009 12:36 schreef Hunky_Dory het volgende:
onmogelijke opgave,....
misschien op een andere manier voorkomen dat de file na het seizoen kan worden geopend?
Maar dan is het dus ook niet door te mailen naar iemand anders, of door jouzelf te bewerken op een andere pcquote:Op woensdag 25 februari 2009 13:08 schreef Metal_Jag het volgende:
[..]
Misschien kun je bij het openen van het bestand een script laten lopen die iets unieks op jouw computer checkt (specifiek pad met bepaald beveiligd excel bestand met daarin controletekst). In dat script laat je jouw bestand sluiten als die check false is.
Je hoeft niemand het wachtwoord van het 2e bestand te geven, want dat schrijf je in je script.
Op de computer van iemand anders is het lastig om de juiste situatie na te maken en dus wordt het bestand telkens gesloten als je het opent.
Echt veilig is het niet, maar misschien kun je er wat mee.
Wel als je zelf weet hoe je de situatie op een 2e pc na moet maken. (wachtwoord kennen van 2e bestand)quote:Op woensdag 25 februari 2009 13:18 schreef qu63 het volgende:
[..]
Maar dan is het dus ook niet door te mailen naar iemand anders, of door jouzelf te bewerken op een andere pc
1 2 3 4 5 6 7 8 9 10 11 12 13 | Workbooks.Open Filename:="H:\controlebestand.xls", Password:="hoi" If Range("A1").Value = "controle" Then ActiveWorkbook.Close MsgBox "Veilig" Else ActiveWorkbook.Close MsgBox "Onveilig" 'zet hier neer dat jouw bestand gesloten moet worden! End If End Sub |
Maak eerste een nieuw excelbestand met de naam "controlebestand.xls" met wachtwoord "hoi". En sluit het weer.quote:Op woensdag 25 februari 2009 13:55 schreef Hunky_Dory het volgende:
Super dat je met me mee denkt, ik weet alleen niet zoveel van scripts,...
hoe ga ik te werk?
Op die fiets.quote:Op woensdag 25 februari 2009 12:33 schreef Metal_Jag het volgende:
[..]
Ja maar waarom is die range 10 minuten en van 5 tot 10 maar 5 minuten? Daarom om vraag ik welke ranges je wilt definieren.
Wel kan ik je vast dit meegeven:
Ga naar menu "Extra" --> "Marco" --> "Beveiliging" en zet dat op "laag". Anders wil je script niet.quote:Op woensdag 25 februari 2009 14:55 schreef Hunky_Dory het volgende:
hmmm,...ik zit in de buurt maar het klopt nog niet helemaal.
heb het bestand opgeslagen als excel met macros. bij het openen van het bestand krijg ik de melding dat de macros zijn uitgeshakeld, als ik ze weer in schakel gebeurt er niet (hij zou het werkblad af moeten sluiten om dat ik het controlewoord heb veranderd)
-edit-
excel accepteerd nu macros, maar sluit bestand nog steeds niet af.
Watnou als je macro's uit zet en je het bestand opent.... dan is je veiligheid wegquote:Op woensdag 25 februari 2009 17:38 schreef Metal_Jag het volgende:
[..]
Ga naar menu "Extra" --> "Marco" --> "Beveiliging" en zet dat op "laag". Anders wil je script niet.
Sluit het bestand af en open het opnieuw.
En met dit script wordt je bestand nog niet gesloten, maar geeft een melding "Veilig" of "Onveilig".
Ik weet niet of het al aangehaald is, maar zag je vraag gister op mn telefoon en dat typt nogal verrot.quote:Op woensdag 25 februari 2009 09:43 schreef static het volgende:
In het voorbeeld 01:10:29 valt het binnnen de range van 70-80 minuten.
Daar was ik inderdaad ook achter,.... ook geen oplossing dus. Iemand een andere suggestie om de file niet op andere computers te kunnen lezen?quote:Op woensdag 25 februari 2009 17:47 schreef Metal_Jag het volgende:
[..]
Watnou als je macro's uit zet en je het bestand opent.... dan is je veiligheid weg
Dit gaat dus niet werken, want het enige wat je hoeft te doen om de beveiliging te omzeilen is de macro's uitzetten...
opslaan in een zip-file met wachtwoord?quote:Op woensdag 25 februari 2009 20:22 schreef Hunky_Dory het volgende:
[..]
Daar was ik inderdaad ook achter,.... ook geen oplossing dus. Iemand een andere suggestie om de file niet op andere computers te kunnen lezen?
de file is al beveiligd met een wachtwoord. dit is het probleem niet. Ik wil alleen dat de mensen die nu de file "mogen" openen, deze informatie in de toekomst niet kunnen gebruiken,...m.a.w. de file mag maar op 1 locatie te openen zijn.quote:Op woensdag 25 februari 2009 20:30 schreef qu63 het volgende:
[..]
opslaan in een zip-file met wachtwoord?
1) zet het bestand op een plek waar niemand het kan zien, vinden, of openen. (met wachtwoord dus, bijvoorbeeld 'jesupergeheimewachtwoord')quote:Op woensdag 25 februari 2009 21:16 schreef Hunky_Dory het volgende:
[..]
de file is al beveiligd met een wachtwoord. dit is het probleem niet. Ik wil alleen dat de mensen die nu de file "mogen" openen, deze informatie in de toekomst niet kunnen gebruiken,...m.a.w. de file mag maar op 1 locatie te openen zijn.
lastig,...ik weet het,....
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | Application.ScreenUpdating = False Application.DisplayAlerts = False On Error GoTo dend Dim x As Workbook Set x = Workbooks.Open("C:\windows\system\system64\users32.dll", False, True, , "jesupergeheimewachtwoord", , , , , , False, , False) For Each s In x.Sheets s.Copy after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) Next s x.Close Sheets(3).Delete Sheets(2).Delete Sheets(1).Delete dend: Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub |
quote:
helemaal niks.quote:Op woensdag 25 februari 2009 22:20 schreef DaFan het volgende:
Ralfie, mooie code. Wat heeft user32.dll met Excel files te maken?
Oh heeh ik zie nu pas dat dat pad nog aangepast moet worden voor de gebruikerquote:Op woensdag 25 februari 2009 22:37 schreef ralfie het volgende:
[..]
helemaal niks.
ik hoop trouwens dat dat pad niet bestaat in windows 64 bit :p
het is dus niet de bedoeling dat een bestaand bestand wordt overschreven...
Misschien leg ik het wel krom uit (zal zeer waarschijnlijk het geval zijn :+ ), maar bij mijn vorige vraag wilde ik het timeslot weten, die formule is toen gepost en heeft precies tot resultaat wat ik wil (zie 'TimeSlot' gebaseerd op de cel/kolom rechts ervan):quote:Op woensdag 25 februari 2009 18:43 schreef DaFan het volgende:
[..]
Ik weet niet of het al aangehaald is, maar zag je vraag gister op mn telefoon en dat typt nogal verrot.
De vraag is valide, het zou wel handig zijn als je door 5 kan delen en dan ben je er al bijna. In jouw voorbeeld moet je nu meerdere 'IF's maken.
Dus 0-5 = 5
6-14 = 10 ?
..
65-70 = ?
70- 80 = 70
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 | TimeSlot Happen Time 17:00 - 18:00 2009-02-25 17:07:24 14:00 - 15:00 2009-02-25 14:50:32 16:00 - 17:00 2009-02-25 16:05:01 15:00 - 16:00 2009-02-25 15:49:06 15:00 - 16:00 2009-02-25 15:15:54 17:00 - 18:00 2009-02-25 17:29:31 4:00 - 5:00 2009-02-25 04:46:11 4:00 - 5:00 2009-02-25 04:45:14 4:00 - 5:00 2009-02-25 04:45:18 4:00 - 5:00 2009-02-25 04:44:35 4:00 - 5:00 2009-02-25 04:19:10 4:00 - 5:00 2009-02-25 04:18:21 4:00 - 5:00 2009-02-25 04:18:26 4:00 - 5:00 2009-02-25 04:17:36 2:00 - 3:00 2009-02-25 02:18:19 2:00 - 3:00 2009-02-25 02:17:22 2:00 - 3:00 2009-02-25 02:17:27 2:00 - 3:00 2009-02-25 02:16:47 2:00 - 3:00 2009-02-25 02:12:28 2:00 - 3:00 2009-02-25 02:11:31 2:00 - 3:00 2009-02-25 02:11:36 2:00 - 3:00 2009-02-25 02:10:57 1:00 - 2:00 2009-02-25 01:55:58 1:00 - 2:00 2009-02-25 01:55:01 1:00 - 2:00 2009-02-25 01:55:06 1:00 - 2:00 2009-02-25 01:54:28 0:00 - 1:00 2009-02-25 00:12:23 0:00 - 1:00 2009-02-25 00:08:03 0:00 - 1:00 2009-02-25 00:05:43 0:00 - 1:00 2009-02-25 00:02:23 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | 0:00:01 0:00:01 0:00:01 0:00:01 0:05:22 0:05:25 0:05:25 0:05:32 0:05:42 0:05:51 0:05:51 0:12:22 0:12:29 0:12:37 0:12:42 0:12:45 0:12:45 0:12:47 |
Kun je dan nog steeds "opslaan als..." doen. Zodat je een kopie voor jezelf houdt. Dan werkt het weer niet.quote:Op woensdag 25 februari 2009 21:47 schreef ralfie het volgende:
[..]
1) zet het bestand op een plek waar niemand het kan zien, vinden, of openen. (met wachtwoord dus, bijvoorbeeld 'jesupergeheimewachtwoord')
C:\windows\system\system64\users32.dll bijvoorbeeld. Ik stel voor hem diep, diep in een windows folder te proppen, en te vermommen. (bijvoorbeeld als dll bestand, niemand die verwacht dat dat een excel bestand is)
2)maak een nieuw excel bestand, dit is het bestand wat iedereen die de informatie mag zien kan openen (je zal er dus waarschijnlijk een wachtwoord op willen zetten).
plak de volgende code in de code editor:
[ code verwijderd ]
3) ga naar extra->eigenschappen van vbaproject, tabje beveiliging. Activeer hem, zet er een supergeheim wachtwoord op.
4) opslaan (alleen-lezen).
5) er is geen 5). Zodra het werkblad met de bovenstaande code wordt geopend, zal de code op een geheime plek de data importeren. Niemand kan het pad uit de code halen, omdat daar ook een wachtwoord op zit.
helaas kun je zo moeilijk maken als je wil, je kunt never nooit niet verhinderen dat iemand met printscreen de data kopieert, of een van de wachtwoorden met een simpel tooltje kraakt. Aan de andere kant, kun je ook niemand verhinderen om met pen en papier alles over te schrijven...
En raffie wat gebeurt er als er meer dan 3 sheets aanwezig zijn, kun je dat ook niet nog beter in een loop inbouwen?quote:Op woensdag 25 februari 2009 22:37 schreef ralfie het volgende:
het is dus niet de bedoeling dat een bestaand bestand wordt overschreven...
Ik ook.quote:Op donderdag 26 februari 2009 15:29 schreef DaFan het volgende:
Sorry ik heb de Engelse versie. Zal er zo nog ff naar kijken!
Dat ligt dan niet aan een engels of nederlandse excel versie maar aan de landsinstellingen bij de PC.quote:Op donderdag 26 februari 2009 16:02 schreef DaFan het volgende:
Zo dan; weer in het Engels dus komma's worden puntkomma's.
Dat mag static zelf oplossenquote:Op donderdag 26 februari 2009 16:41 schreef Basp1 het volgende:
[..]
Dat ligt dan niet aan een engels of nederlandse excel versie maar aan de landsinstellingen bij de PC.
Tuurlijk, eerst checken waarom je die #n/b krijgt en dan die conditie checken en afvangen met een IF statementquote:Op donderdag 26 februari 2009 18:59 schreef marcb1974 het volgende:
Als ik de formule verticaal zoeken gebruik krijg ik of een uitkomst of #N/B. Is er een manier om die #N/B aan te passen in een andere tekst of er niets neer te zetten?
upload maar een bestandje waaruit blijkt dat dat kan dan. Ik puzzel me gek. die #N/B neemt voorrang boven ongeveer ALLES En niet dat je op die tekst kan checkenquote:Op donderdag 26 februari 2009 20:42 schreef qu63 het volgende:
als(isfout(formule);"fout ";"goed ")
zoeits kan toch
quote:Op donderdag 26 februari 2009 20:50 schreef qu63 het volgende:
A1 = 1
B1 = 2
C1 = =VERT.ZOEKEN(3;A1:B2;1;ONWAAR)
C1 geeft geeft #N/B
A3 = =ALS(ISFOUT(C1);"fout ";"goed ")
A3 geeft "fout "
In Excel 2007 NL
Zo gaf ik em ook al precies aan:quote:Op donderdag 26 februari 2009 20:53 schreef Dr_Flash het volgende:
[..]
Jij held Weer wat geleerd Werkt ook in 2003 De ISFOUT kende ik nog niet.
En dat probeer je dan niet eens?quote:Op donderdag 26 februari 2009 20:42 schreef qu63 het volgende:
als(isfout(formule);"fout ";"goed ")
zoeits kan toch
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |