abonnement bol.com Unibet Coolblue
  dinsdag 7 november 2017 @ 14:57:25 #126
82396 nils7
De forumkrokodil
pi_174922615
Hi allen
Win 10, Excel 2016

Ik zit met een datum probleem.
Mijn excel staat op NL maar mijn datafeed (CSV bestand) is US format in een NOW() timestamp (datum + tijdstip).
Nu kan ik dit met left en rights best omzetten naar een NL format maar dat lukt me niet omdat hij het volgende US timestamp "11/01/17 00:33" ziet als "42746" als ik hem benader met een left.
Dat ziet hij dus als de NL 11 januari, maar dus eigenlijk 1 november is.
In dezelfde kolom staat dus ook een US "10/31/2017 11:36:53 PM" daar kan hij dus geen NL datum van maken dus mijn Left(timestamp,10) is dus ook gewoon 10/31/2017 als TEXT.

Ik zou dit graag met een formule op willen lossen, waar google vaak met formatting of left/right/mid oplossingen komt. Kom ik hier niet aan uit.

Iemand een idee?


[edit]
Deze oplossing werkt niet:
https://stackoverflow.com(...)o-european-date-date
N/A
Disclaimer: ik ben geen expert maar shitposter, dit is geen advies en aan deze post zijn geen rechten te ontlenen
  dinsdag 7 november 2017 @ 16:30:17 #127
346939 Janneke141
Green, green grass of home
pi_174924176
quote:
0s.gif Op dinsdag 7 november 2017 14:57 schreef nils7 het volgende:
Hi allen
Win 10, Excel 2016

Ik zit met een datum probleem.
Mijn excel staat op NL maar mijn datafeed (CSV bestand) is US format in een NOW() timestamp (datum + tijdstip).
Nu kan ik dit met left en rights best omzetten naar een NL format maar dat lukt me niet omdat hij het volgende US timestamp "11/01/17 00:33" ziet als "42746" als ik hem benader met een left.
Dat ziet hij dus als de NL 11 januari, maar dus eigenlijk 1 november is.
In dezelfde kolom staat dus ook een US "10/31/2017 11:36:53 PM" daar kan hij dus geen NL datum van maken dus mijn Left(timestamp,10) is dus ook gewoon 10/31/2017 als TEXT.

Ik zou dit graag met een formule op willen lossen, waar google vaak met formatting of left/right/mid oplossingen komt. Kom ik hier niet aan uit.

Iemand een idee?

[edit]
Deze oplossing werkt niet:
https://stackoverflow.com(...)o-european-date-date

Het kan in ieder geval met

=DATE(MID(A1;4;2);LEFT(A1;2);MID(A1;7;2)+2000)

Misschien is er wel een charmantere oplossing, maar die ken ik ook niet. Waarom wil je eigenlijk een oplossing zonder LEFTs en MIDs?
Opinion is the medium between knowledge and ignorance (Plato)
  dinsdag 7 november 2017 @ 17:00:18 #128
82396 nils7
De forumkrokodil
pi_174924731
quote:
0s.gif Op dinsdag 7 november 2017 16:30 schreef Janneke141 het volgende:

[..]

Het kan in ieder geval met

=DATE(MID(A1;4;2);LEFT(A1;2);MID(A1;7;2)+2000)

Misschien is er wel een charmantere oplossing, maar die ken ik ook niet. Waarom wil je eigenlijk een oplossing zonder LEFTs en MIDs?
Nee mag best met Left en Mids maar kreeg het er niet uit.
Ik zal met deze eens gaan proberen.
N/A
Disclaimer: ik ben geen expert maar shitposter, dit is geen advies en aan deze post zijn geen rechten te ontlenen
pi_174948900
Hi mede fokkers!
Win 10, Excel 2013 incl plugin PowerQuery

Ik hoop hier een Excel-expert te vinden die me verder kan helpen met het volgende:

Via Power-Querie (officiele Excel plugin) doe ik iedere vijf minuten een poll via:
https://api.coinmarketcap.com/v1/ticker/

Deze gegevens komen in Excel op een apart tabblad. Hieruit haal ik enige waarden die voor mij interessant zijn. (een aantal prijswaarden) Vervolgens reken ik aan de hand van een zelf ingevoerd getal de waarde uit die ik wil hebben.

Het resultaat is dat ik iedere vijf minuten op een apart tabblad een aantal waarden heb die steeds anders zijn vanwege de aard van cryptocurrency.

Nou de vraag:
ik zou deze waarden bij change (of per vijf minuten) willen wegschrijven in een tabel. Wellicht gebruik ik de verkeerde zoektermen, maar internet maakt me niet veel wijzer.

Wie weet of dit mogelijk is, en zo ja, hoe ik dit kan uitvoeren?
Alle hulp is welkom en uiteraard als de vraag niet helemaal duidelijk is van harte bereid toe te lichten.

Groet,
langverhaal.
pi_174949426
Aanvulling op mijn bovenstaande vraag; ik heb een macro opgenomen, maar bij uitvoer doet deze precies wat ik ervan verwacht, namelijk op de rij waar ik de macro opnam de waarden wegschrijven.
Hoe pas ik deze macro aan zodat deze wegschrijft vanuit de cel die op dat moment is geselecteerd?
Dat zou al voor een deel werken, zei het nog niet geautomatiseerd.

Dus vanaf het dikgedrukte wil ik de macro vanaf de op dat moment geselecteerde cel laten wegschrijven.

' Waarden Macro
'

'
Range("D2:J2").Select
Selection.Copy
Range("D14").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("K13").Select
Application.CutCopyMode = False
Selection.AutoFill Destination:=Range("K13:K14"), Type:=xlFillDefault
Range("K13:K14").Select
Range("L13").Select
Selection.AutoFill Destination:=Range("L13:L14"), Type:=xlFillDefault
Range("L13:L14").Select
Range("K15:L15").Select
Selection.ClearContents
Range("D15").Select
End Sub
  woensdag 8 november 2017 @ 22:21:14 #131
77676 The_vice
alweer 'n idee?
pi_174950299
quote:
0s.gif Op woensdag 8 november 2017 21:46 schreef langverhaal het volgende:
Aanvulling op mijn bovenstaande vraag; ik heb een macro opgenomen, maar bij uitvoer doet deze precies wat ik ervan verwacht, namelijk op de rij waar ik de macro opnam de waarden wegschrijven.
Hoe pas ik deze macro aan zodat deze wegschrijft vanuit de cel die op dat moment is geselecteerd?
Opgenomen macro's zijn niet zo geschikt om flexibel te maken, daar er harde verwijzingen in komen (A1 etc.). (Maar wel handig om even snel iets te bedenken en te kijken welke methodes er zijn.)
Ik zou het iets anders doen. Gebruik de Cells(row,column) verwijzing. Dan kan je numeriek gaan werken.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Sub Macro1()
Dim SheetnaamBron As String
Dim SheetnaamDoel As String
SheetnaamBron = "Sheet2"
SheetnaamDoel = "Sheet1"
Dim Rij As Long
Dim Kolom As Long
'data uit 5 kolommen, 1 rij over te halen
Rij = 1
Kolom = 5

For j = 1 To Rij
'Insert Row Above Row 2
'met bijv kolomnamen op eerste rij
Sheets(SheetnaamDoel).Rows(2).Insert Shift:=xlDown, _
    CopyOrigin:=xlFormatFromLeftOrAbove 'or xlFormatFromRightOrBelow
    'dan door kolommen wandelen.
    For i = 1 To Kolom
    '+0 aanpassen in geval van offset op bron sheet
    Sheets(SheetnaamDoel).Cells(2, i).Value = Sheets(SheetnaamBron).Cells(j + 0, i + 0).Value
    Next i
Next j
    
End Sub
Met boven staande lees je de waarde uit een broncell en schrijf je die weg naar een doelcell.
Door vooraf een rij in te voegen op het doel sheet weet je zeker dat het daar leeg is. (Je kan ook iets onderaan een tabel toevoegen, maar dan moet eerst te weten komen waar het einde van de tabel is)

[ Bericht 64% gewijzigd door The_vice op 08-11-2017 22:43:29 ]
Hendrik de Heette heette Hendrik de Heette omdat zijn vader ook Hendrik heette.
-vandaag was 't ook mooi-
Excel; zet het eens in een pivot table
pi_175084575
Goedemorgen,

in het verre verleden heb ik redelijk wat met Excel gedaan maar helaas is veel kennis verdwenen.

Ik zit met het volgende:

Ik heb twee sheets met data. Ik wil kolommen in sheet 1 met kolommen in sheet 2 vergelijken.

Oftwel:

komt waarde voor in kolom 1 en in kolom 2 dan ja en indien niet dan nee.

Is zoiets te gieten in een formule?
  woensdag 15 november 2017 @ 11:34:52 #133
346939 Janneke141
Green, green grass of home
pi_175084804
quote:
0s.gif Op woensdag 15 november 2017 11:23 schreef edward_v het volgende:
Goedemorgen,

in het verre verleden heb ik redelijk wat met Excel gedaan maar helaas is veel kennis verdwenen.

Ik zit met het volgende:

Ik heb twee sheets met data. Ik wil kolommen in sheet 1 met kolommen in sheet 2 vergelijken.

Oftwel:

komt waarde voor in kolom 1 en in kolom 2 dan ja en indien niet dan nee.

Is zoiets te gieten in een formule?
Misschien kun je iets met de functie VERGELIJKEN()
Opinion is the medium between knowledge and ignorance (Plato)
pi_175085368
quote:
0s.gif Op woensdag 15 november 2017 11:23 schreef edward_v het volgende:
Goedemorgen,

in het verre verleden heb ik redelijk wat met Excel gedaan maar helaas is veel kennis verdwenen.

Ik zit met het volgende:

Ik heb twee sheets met data. Ik wil kolommen in sheet 1 met kolommen in sheet 2 vergelijken.

Oftwel:

komt waarde voor in kolom 1 en in kolom 2 dan ja en indien niet dan nee.

Is zoiets te gieten in een formule?
en die waardes moeten wel gelijk zijn?
volstaat dan niet het volgende:
1=IF(Sheet1!B3=Sheet2!B3;TRUE;FALSE)

geen nederlandse variant beschikbaar, dus nederlandse commando's moet je even uitzoeken.. Echt, welke idioot maakte daar ooit nederlandse functienamen voor
pi_175085751
quote:
0s.gif Op woensdag 15 november 2017 12:05 schreef mschol het volgende:

[..]

en die waardes moeten wel gelijk zijn?
volstaat dan niet het volgende:
[ code verwijderd ]

geen nederlandse variant beschikbaar, dus nederlandse commando's moet je even uitzoeken.. Echt, welke idioot maakte daar ooit nederlandse functienamen voor
waar staat die b3 voor in dit geval?
pi_175085777
quote:
0s.gif Op woensdag 15 november 2017 12:27 schreef edward_v het volgende:

[..]

waar staat die b3 voor in dit geval?
De cel op het werkblad (respectievelijk werkblad 1 en werkblad 2 in mijn voorbeeld, waar je de daadwerkelijke naam van moet gebruiken)
dus als je werkbladen jantje en pietje heten en je cellen A3 en D10 moet vergelijken wordt het:

1=IF(jantje!A3=pietje!D10;TRUE;FALSE)
de cel waarin je deze formule plaatst toont het resultaat
pi_175086573
quote:
0s.gif Op woensdag 15 november 2017 12:28 schreef mschol het volgende:

[..]

De cel op het werkblad (respectievelijk werkblad 1 en werkblad 2 in mijn voorbeeld, waar je de daadwerkelijke naam van moet gebruiken)
dus als je werkbladen jantje en pietje heten en je cellen A3 en D10 moet vergelijken wordt het:
[ code verwijderd ]

de cel waarin je deze formule plaatst toont het resultaat
wat als ik alle waarden uit kolom a met alle waarden in kolom b wil vergelijken.

oftewel komen ze zowel voor in a en b dan true. maakt niet uit welk positie
pi_175089306
quote:
0s.gif Op woensdag 15 november 2017 13:10 schreef edward_v het volgende:

[..]

wat als ik alle waarden uit kolom a met alle waarden in kolom b wil vergelijken.

oftewel komen ze zowel voor in a en b dan true. maakt niet uit welk positie
Met MATCH, COUNTIF of VLOOKUP kan je bepalen of een bepaalde waarde voorkomt in een een kolom. Als je wil weten of die waarde voorkomt in zowel kolom A als B, dan kan je er nog een AND eromheen plaatsen. :)
pi_176299184
Hallo, beginnersvraagje :@

Ik ben een excel aan het maken om de gewerkte uren van mijn vriend in bij te houden.
Ik heb diverse kolommen gemaakt zoals gewerkte uren , verlof, storingsuren etc. Het optellen werkt ook door de (u):mm:ss.
Nu wil ik een kolom waarin de overuren automatisch berekend worden. Dus kolom werkuren bevat bijvoorbeeld de waarde 11:30, en dan zou kolom overuren moeten worden :
waarde kolom werkuren - 8 uur (standaard werkdag), maar ik krijg het niet voor elkaar.
Iemand die me op weg kan helpen zonder dat ik een extra kolom hoef te maken?

Alvast bedankt! O+
Hey amigos . . .Adelante amigos . . .Vamos vamos mi amor, Me gusta mucho tu sabor, No no no no tu corazón, Mucho mucho tu limón, Dame de tu fruta
Vamos mi amor . . .Te quiero puta! Te quiero puta! Ay que rico
  vrijdag 5 januari 2018 @ 12:29:42 #140
346939 Janneke141
Green, green grass of home
pi_176299278
quote:
0s.gif Op vrijdag 5 januari 2018 12:24 schreef gekkie000000 het volgende:
Hallo, beginnersvraagje :@

Ik ben een excel aan het maken om de gewerkte uren van mijn vriend in bij te houden.
Ik heb diverse kolommen gemaakt zoals gewerkte uren , verlof, storingsuren etc. Het optellen werkt ook door de (u):mm:ss.
Nu wil ik een kolom waarin de overuren automatisch berekend worden. Dus kolom werkuren bevat bijvoorbeeld de waarde 11:30, en dan zou kolom overuren moeten worden :
waarde kolom werkuren - 8 uur (standaard werkdag), maar ik krijg het niet voor elkaar.
Iemand die me op weg kan helpen zonder dat ik een extra kolom hoef te maken?

Alvast bedankt! O+
Excel rekent met tijden alsof het fracties van 24 zijn. De tijd '12:00' ziet Excel dus als 0,5, omdat het de helft van een etmaal (24) is.

Als je in een of andere cel een tijdsduur hebt gezet en je wil daar acht uur vanaf halen, dan zul je er dus het getal 8/24 vanaf moeten halen. D.w.z.: als in A1 de tijd '11:30' is ingevoerd, en in cel B1 zet je de formule =A1-8/24, en de celopmaak van B1 is ook 'tijd', dan komt er 03:30 in te staan.
Opinion is the medium between knowledge and ignorance (Plato)
pi_176300525
quote:
0s.gif Op vrijdag 5 januari 2018 12:29 schreef Janneke141 het volgende:

[..]

Excel rekent met tijden alsof het fracties van 24 zijn. De tijd '12:00' ziet Excel dus als 0,5, omdat het de helft van een etmaal (24) is.

Als je in een of andere cel een tijdsduur hebt gezet en je wil daar acht uur vanaf halen, dan zul je er dus het getal 8/24 vanaf moeten halen. D.w.z.: als in A1 de tijd '11:30' is ingevoerd, en in cel B1 zet je de formule =A1-8/24, en de celopmaak van B1 is ook 'tijd', dan komt er 03:30 in te staan.
Oh super, bedankt voor de uitleg! Ik ga het proberen.
Hey amigos . . .Adelante amigos . . .Vamos vamos mi amor, Me gusta mucho tu sabor, No no no no tu corazón, Mucho mucho tu limón, Dame de tu fruta
Vamos mi amor . . .Te quiero puta! Te quiero puta! Ay que rico
pi_176433501
Ik heb mijn eerste macro ooit gebouwd, jeej :)
Ik heb een bepaald aantal cellen wat gevuld moet zijn voor andere mensen in het bedrijf op mogen slaan. Hiervoor gebruik ik de volgende macro, en die werkt:

quote:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Application.Sheets("form").Range("B14").Value = "" Then
Cancel = True
MsgBox "B14 is empty"
End If
If Application.Sheets("form").Range("B15").Value = "" Then
Cancel = True
MsgBox "B15 is empty"
End If
If Application.Sheets("form").Range("B16").Value = "" Then
Cancel = True
MsgBox "B16 is empty"
End If
If Application.Sheets("form").Range("B19").Value = "" Then
Cancel = True
MsgBox "B19 is empty"
End If
If Application.Sheets("form").Range("B27").Value = "" Then
Cancel = True
MsgBox "B27 is empty"
End If
If Application.Sheets("form").Range("B28").Value = "" Then
Cancel = True
MsgBox "B28 is empty"
End If
If Application.Sheets("form").Range("B30").Value = "" Then
Cancel = True
MsgBox "B30 is empty"
End If
If Application.Sheets("form").Range("B32").Value = "" Then
Cancel = True
MsgBox "B32 is empty"
End If
If Application.Sheets("form").Range("B39").Value = "" Then
Cancel = True
MsgBox "B39 is empty"
End If
End Sub
Alleen nu wil ik het bestand wel op kunnen slaan zonder dat ik de cellen moet vullen :P Hoe doe ik dat? Ik las al iets dat je bijvoorbeeld cel A100 Skipip noemt, en dan onderstaande macro gebruikt dus als je bijvoorbeeld in A100 "TRUE" zet, hij dan hem leeg op slaat:

If Range("Skipit").Value = "TRUE" Then
Range("Skipit").Value = ""
Exit Sub
End If

Maar ik krijg die niet werkend. Waar zou deze moeten? Of iemand anders een idee?
  donderdag 11 januari 2018 @ 20:44:27 #143
77676 The_vice
alweer 'n idee?
pi_176439591
quote:
0s.gif Op donderdag 11 januari 2018 15:07 schreef Zocalo het volgende:
Ik heb mijn eerste macro ooit gebouwd, jeej :)
Gefeliciteerd, altijd goed om je in deze materie te verdiepen.
quote:
[..]
Alleen nu wil ik het bestand wel op kunnen slaan zonder dat ik de cellen moet vullen :P Hoe doe ik dat? Ik las al iets dat je bijvoorbeeld cel A100 Skipip noemt, en dan onderstaande macro gebruikt dus als je bijvoorbeeld in A100 "TRUE" zet, hij dan hem leeg op slaat:
...
Maar ik krijg die niet werkend. Waar zou deze moeten? Of iemand anders een idee?
Ja prima methode om zo de zaak te bypassen.
In programmeren moet je vaak achterstevoren denken, dan hoe je iets woordelijk bedenkt.

ipv: Check of er lege cellen zijn, save dan niet. Behalve as skipit true is.
in programmeren check je eerst of skipit true is, zo ja doe niets. Zo nee ga kijken of er lege cellen zijn.

Verder is het ook hééél handig om herhalende stukken code in een functie te stoppen, dat maakt het overzichtelijker en onderhoudbaar.

Ik heb het tot dit verbouwd:
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
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'https://msdn.microsoft.com/en-us/vba/excel-vba/articles/workbook-beforesave-event-excel
Dim strSheet As String
Dim arrRange() As String
Dim result As String
strSheet = "Sheet1"
arrRange = Split("B14,B15,B16,B27,B30,B32", ",", -1, vbTextCompare)
'eerst kijken of er geskipt moet worden

If Bypass Then
    Cancel = False
    Exit Sub
Else
'anders mogen de cellen gechecked worden
    For Each Item In arrRange
        If CheckFilledCells(strSheet, CStr(Item)) Then
        'één of meerdere cellen zijn niet ingevuld
        Cancel = True
            If result = "" Then
                'eerste item
                result = Item
            Else
                result = Item & ", " & result
            End If
        
        End If
    Next Item
    
    If Not result = "" Then
    MsgBox "empty item(s) in: " & result & vbCrLf & _
            "Fill these in to be able to save sheet"
    End If
    
End If

End Sub
'-----------------------------------------------------------------------
Private Function CheckFilledCells(sheetname As String, strRange As String) As Boolean
Dim Mytest As String
Mytest = Application.Sheets(sheetname).Range(strRange).Value

If Mytest = "" Then CheckFilledCells = True

End Function
'-----------------------------------------------------------------------
Private Function Bypass() As Boolean
Dim Skip As Boolean
Skip = Range("Skipit").Value
Debug.Print "SKIP", Skip
If Skip Then
    Bypass = True
    'reset naar niks, of beter FALSE
    Range("Skipit").Value = False
End If
End Function
Even de snelcursus VBA, ik gebruik in bovenstaande:
variabelen,
1
2
Dim strSheet As String
strSheet = "Sheet1"
hiermee verwijs je in dit geval naar een sheetnaam, "FORM" in jou geval.

arrays
1
2
Dim arrRange() As String
arrRange = Split("B14,B15,B16,B27,B30,B32", ",", -1, vbTextCompare)
Middels de split functie wordt er een array (soort van lijstje) gevuld, waaruit later elk element wordt bekeken. (en nu dus ook makkelijk uitbreidbaar met meer of minder items)

loops (FOR EACH)
1
2
For Each Item In arrRange
Next item
de for each loop loopt langs elke waarde in de array in dit geval, totdat alle waardes zijn behandelt. Zo voorkom je dat je veel herhalende, of lastig meegroeiende code moet gaan bouwen.

functies
1Private Function CheckFilledCells(sheetname As String, strRange As String) As Boolean
met een functie (net zoals in een excel formule) worden een aantal variabelen verwerkt. Een functie geeft in principe een resultaat terug, in dit geval een Boolean, true of false.
Afhankelijk van het resultaat laat je hier je If functie iets doen.

Wellicht meer dan je als antwoord op had gehoopt, maar ik zou willen dat ik dit allemaal had geweten toen ik net begon met programmeren. ;)
Hendrik de Heette heette Hendrik de Heette omdat zijn vader ook Hendrik heette.
-vandaag was 't ook mooi-
Excel; zet het eens in een pivot table
pi_176439886
quote:
0s.gif Op donderdag 11 januari 2018 20:44 schreef The_vice het volgende:

Wellicht meer dan je als antwoord op had gehoopt, maar ik zou willen dat ik dit allemaal had geweten toen ik net begon met programmeren. ;)
Wow, wat een uitleg :) Super bedankt! Ik had het inmiddels wel werkend gekregen maar had al zo'n vermoeden dat het in te korten viel :P Ik wou dat ik dit allemaal 5 jaar geleden al geleerd had, maar je bent nooit te oud om te leren...
  donderdag 11 januari 2018 @ 23:11:17 #145
85514 ralfie
!Yvan eht nioj
pi_176443572
kan veel makkelijker

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    If Range("Skipit").Value = "TRUE" Then 'indien skipit == 'true'
        Range("Skipit").Value = "" 'maak leeg zodat deze leeg is bij het opslaan. De volgende keer moet je weer 'true' in die cel zetten
        Exit Sub 'je hoeft niets te controleren, we laten toch al toe dat er opgeslagen wordt
    End If

    Dim cell As Range, msg As String 'altijd variabelen declareren, dan helpt de editor je
    For Each cell In Application.Sheets("form").Range("A1,A3,A4") 'voeg hier de cellen toe, gescheiden met komma
        If IsEmpty(cell.Value) Then 'als cell leeg is dan ...
            msg = msg & ", " & cell.Address(False, False) 'voeg zijn adres toe aan de 'msg' string
        End If
    Next cell 'loop door alle cellen in bovenstaande lijstje
    If Len(msg) > 0 Then 'indien cellen gevonden, melding geven
        MsgBox Mid(msg, 2) & " empty, please fill in to continue"
        Cancel = True 'je mag niet opslaan
    End If
End Sub
pi_176790971
Ik heb een Excel bestand waarbij op tab 2 t/m 15 in kolom A tekst staat. Het aantal rijen waarin tekst staat is per tab anders en kan veranderen.

Ik zou graag op tab 1 een overzicht maken van al die kolom A teksten die op de tabs 2 t/m 15 staan.

Ik snap dat je kan celverwijzen, maar dat is statisch. Het liefst zou ik een overzicht maken waarbij rekening wordt gehouden met het aantal gevulde rijen en er in het overzicht geen witregels tussen komen.

Iemand een idee voor een oplossing?
  zondag 28 januari 2018 @ 09:57:09 #147
346939 Janneke141
Green, green grass of home
pi_176791139
quote:
0s.gif Op zondag 28 januari 2018 09:46 schreef Blue_note het volgende:
Ik heb een Excel bestand waarbij op tab 2 t/m 15 in kolom A tekst staat. Het aantal rijen waarin tekst staat is per tab anders en kan veranderen.

Ik zou graag op tab 1 een overzicht maken van al die kolom A teksten die op de tabs 2 t/m 15 staan.

Ik snap dat je kan celverwijzen, maar dat is statisch. Het liefst zou ik een overzicht maken waarbij rekening wordt gehouden met het aantal gevulde rijen en er in het overzicht geen witregels tussen komen.

Iemand een idee voor een oplossing?
Dat kan wel, maar dat gaat je een paar hulpkolommetjes kosten.

In steno een oplossing die werkt:
- Maak een blad16 waarop je een rijtje maakt met AANTALARG(A:A)-functies voor ieder werkblad van 2 t/m 15
- Op Blad1 in A1 zet je de tekst 'Blad2'
- Ernaast in B1 zet je een 1
- Nu ga je in de rijen daar beneden de celwaarde erboven vergelijken met het totaal aantal regels op het betreffende werkblad. Zo lang dat niet is bereikt gaat de teller telkens 1 omhoog en blijft de bladnaam hetzelfde. Beetje klooien met ALS-functies en VERT.ZOEKEN.
- In kolom C kun je nu met een combinatie van INDEX en INDIRECT je celwaardes van al die bladen oplepelen.
Opinion is the medium between knowledge and ignorance (Plato)
pi_176791485
quote:
0s.gif Op zondag 28 januari 2018 09:57 schreef Janneke141 het volgende:

[..]

Dat kan wel, maar dat gaat je een paar hulpkolommetjes kosten.

In steno een oplossing die werkt:
- Maak een blad16 waarop je een rijtje maakt met AANTALARG(A:A)-functies voor ieder werkblad van 2 t/m 15
- Op Blad1 in A1 zet je de tekst 'Blad2'
- Ernaast in B1 zet je een 1
- Nu ga je in de rijen daar beneden de celwaarde erboven vergelijken met het totaal aantal regels op het betreffende werkblad. Zo lang dat niet is bereikt gaat de teller telkens 1 omhoog en blijft de bladnaam hetzelfde. Beetje klooien met ALS-functies en VERT.ZOEKEN.
- In kolom C kun je nu met een combinatie van INDEX en INDIRECT je celwaardes van al die bladen oplepelen.
Thanks. Eens even mee spelen. Gevaar zit hem erin dat er dan veel geknoopt wordt. Blad2 t/m 15 kan in theorie ook t/m 50 gaan worden.

Ben bang dat verknopingen naar verloop van tijd dan misgaan, niet?!
  zondag 28 januari 2018 @ 10:20:48 #149
346939 Janneke141
Green, green grass of home
pi_176791545
quote:
1s.gif Op zondag 28 januari 2018 10:17 schreef Blue_note het volgende:

[..]

Thanks. Eens even mee spelen. Gevaar zit hem erin dat er dan veel geknoopt wordt. Blad2 t/m 15 kan in theorie ook t/m 50 gaan worden.

Ben bang dat verknopingen naar verloop van tijd dan misgaan, niet?!
Behalve dan dat je op het 'telblad' voor ieder blad dat erbij komt handmatig nieuw regeltje moet maken, zie ik niet wat er misgaat. Alleen wordt het hele spul natuurlijk wel trager als het aantal bladen en regels oploopt.

Misschien moet je er trouwens wel voor kiezen om in kolom A alleen maar nummers te gebruiken in plaats van 'Blad1' etc, dat is makkelijker met ophogen.
Opinion is the medium between knowledge and ignorance (Plato)
  zondag 28 januari 2018 @ 12:12:14 #150
62215 qu63
..de tijd drinkt..
pi_176793596
quote:
1s.gif Op zondag 28 januari 2018 10:17 schreef Blue_note het volgende:

[..]

Thanks. Eens even mee spelen. Gevaar zit hem erin dat er dan veel geknoopt wordt. Blad2 t/m 15 kan in theorie ook t/m 50 gaan worden.

Ben bang dat verknopingen naar verloop van tijd dan misgaan, niet?!
Blad0 wordt dan je hulpsheet, Blad1 geeft je het overzicht.
In Blad0 kan je dan een van deze oplossingen gebruiken voor het aantal sheets (min Blad0 en Blad1): https://www.extendoffice.(...)umber-of-sheets.html
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
abonnement bol.com Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')