Lijst "Wie was afwezig" automatiseren

Status
Niet open voor verdere reacties.

Oude leerling

Gebruiker
Lid geworden
30 aug 2010
Berichten
566
Geacht forum

In de bijlage , op blad1 , staan alle leden en de speeldatums
Op blad2 de namen welke een wedstrijd gespeeld hebben
Nu wil ik kijken of de namen op blad2 kolom B , te vinden zijn bij de gespeelde wedstrijden op Blad1 (Range A10:A45 + Range G10:G45)

Komen ze daar niet op voor , dan waren die personen dus afwezig.

Er moet dan een "X" komen in Blad2 bij die betreffende persoon en wel in de kolom o.e.k. met de speeldatum. (Blad1 , Range G5)

Weet u hier een oplossing voor?

Vriendelijke groet , Jaap
 

Bijlagen

Ik kom tot deze

Code:
=IF(C$1<>Blad1!$G$5;"";IF(OR(ISNUMBER(MATCH($B2;Blad1!$A$10:$A$45;0));ISNUMBER(MATCH($B2;Blad1!$G$10:$G$45;0)));"x";""))
 
Als de datum veranderd zijn je kruisjes weer weg.
Daarom vermoed ik dat de vraag ook in deze sectie staat.
Code:
Sub wie_was_afwezig()
Dim sn, sq, i As Long, ii As Long, col As variant, y As Long
With Sheets("blad2")
   sn = .Cells(1).CurrentRegion
   sq = Sheets("blad1").Range("a10:g45")
 For i = 2 To UBound(sn)
     For ii = 1 To UBound(sq)
        If sn(i, 2) = sq(ii, 1) Or sn(i, 2) = sq(ii, 7) Then y = y + 1
     Next ii
        If y = 0 Then
           col = Application.Match(Sheets("blad1").Cells(5, 7), .Rows(1), 0)
           If Not IsError(col) Then sn(i, col) = "x"
         End If
      y = 0
  Next i
 .Cells(1).Resize(UBound(sn), UBound(sn, 2)) = sn
End With
End Sub

Of:
Code:
Sub wie_was_afwezig()
Dim sn, col, kolomA, kolomG, i As Long
With Sheets("blad2")
   sn = .Cells(1).CurrentRegion
For i = 2 To UBound(sn)
   kolomA = Application.Match(sn(i, 2), Sheets("blad1").Range("a10:a45"), 0)
   kolomG = Application.Match(sn(i, 2), Sheets("blad1").Range("g10:g45"), 0)
         If IsError(kolomA) And IsError(kolomG) Then
           col = Application.Match(Sheets("blad1").Cells(5, 7), .Rows(1), 0)
           If Not IsError(col) Then sn(i, col) = "x"
         End If
  Next i
 .Cells(1).Resize(UBound(sn), UBound(sn, 2)) = sn
End With
End Sub
 
Laatst bewerkt:
Ik ben weer enorm goed geholpen door dit Forum
Wat een kennis!!

HSV , ik ga er eens voor zitten om te doorgronden hoe jou beide oplossingen werken.

Bedankt , Jaap
 
Mij leek deze wel aardig

PHP:
=IF(--(M$1&IFERROR(MATCH(B2;Blad1!$A$10:$A$45;0);"")&IFERROR(MATCH(B2;Blad1!$G$10:$G$45;0);""))=Blad1!$G$5;"x";"")

invoeren in M2, doortrekken naar C2:T36
 
Laatst bewerkt:
snb,

Ik neem aan dat je bedoeld met M2 "Blad2"
De code heb ik daar geplakt in C2 en toen doorgetrokken tot T37 zodat in iedere cel nu een formule staat.
Welke datum ik ook in Blad1 invul , er komen geen kruisjes
Wel staan er in iedere cel hestec's
Doe ik wat fout , want het schijnt niet te werken.
De code die ik geplakt heb begint met een = teken
Bij u staat er nog een "1" voor .
Is dit soms van belang??

Jaap
 
Plak dit in Blad2!C2 (cel C2 van Blad2)

=IF(--(C$1&IFERROR(MATCH($B2;Blad1!$A$10:$A$45;0);"")&IFERROR(MATCH($B2;Blad1!$G$10:$G$45;0);""))=Blad1!$G$5;"x";"")

en vervolgens doortrekken naar rechts en naar beneden.
 
Laatst bewerkt:
@snb,

Je hebt wel een doneerknop maar nog geen $tekens in de ogen:d
 
VenA/snb,

Het probleem was voor mij al opgelost met de macro van VSH , maar het intrigeert mij
dat jullie beide formules bij mij niets doen.
Krijg in alle cellen alleen maar "#NAAM?"

Nu heb ik jullie beide zeer hoog zitten dus het zal wel aan mij liggen
De formules doortrekken heb ik echt goed gedaan.
Maar waarom doen ze het bij mij niet??

Jaap
 
Je moet de formule vertalen naar het Nederlands Jaap.
 
VSH ,

Dat was het , nu werkt het wel!

Nooit bij nagedacht dat het Nederlands MOET zijn die Exel-formules
Bedankt voor de info.

VenA/snb , ik ga ze toch bewaren die formules van jullie. Alleen jammer dat ze bij een nieuwe datum de oude gegevens wist.

Fijn weekend en bedankt voor de respons.

Jaap
 
Alleen jammer dat ze bij een nieuwe datum de oude gegevens wist.

Nee hoor, de gegevens worden niet gewist, de formule geeft alleen de resultaten die overeenkomen met de gegevens in het andere blad.
Bestudeer de formule en je snapt waarom.

Als je de gegevens wil bewaren dien je de resultaten van de formule van een bepaalde dag om te zetten naar 'waarden'.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan