• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

cellen tellen en aan de hand daarvan formules plaatsen

Status
Niet open voor verdere reacties.

gammelkeunited

Gebruiker
Lid geworden
6 mrt 2008
Berichten
36
Hallo mensen,

Ik heb de cellen B5 tot en met B10
hierin kan tekst staan.
nu moet geteld worden in hoeveel van deze 6 cellen tekst staat. en aan de hand daarvan moet een formule worden ingevoerd in cel K1 en worden doorgevoerd tot en met cel K100
als in 1 cel tekst staat, moet de volgende formule worden ingevoerd:

ALS(D1="";"NIET IN MATRIX";"")

als in 2 cellen tekst staat, moet de volgende formule worden ingevoerd:

ALS(C1="";"";ALS(ALS(E1<>"";"";D1)=0;"NIET IN MATRIX";ALS(E1<>"";"";D1)))

als in 3 cellen tekst staat, moet de volgende formule worden ingevoerd:

ALS(C1="";"";ALS(ALS(F1<>"";"";ALS(E1="";D1;D1&"-"&E1))=0;"NIET IN MATRIX";ALS(F1<>"";"";ALS(E1="";D1;D1&"-"&E1))))

als in 4 cellen tekst staat, moet de volgende formule worden ingevoerd:

ALS(C1="";"";ALS(ALS(G1<>"";"";ALS(E1="";D1;D1&"-"&ALS(F1<>"";F1;E1)))=0;"NIET IN MATRIX";ALS(G1<>"";"";ALS(E1="";D1;D1&"-"&ALS(F1<>"";F1;E1)))))

als in 5 cellen tekst staat, moet de volgende formule worden ingevoerd:

ALS(C1="";"";ALS(ALS(H1<>"";"";ALS(E1="";D1;D1&"-"&ALS(G1<>"";G1;ALS(F1<>"";F1;E1))))=0;"NIET IN MATRIX";ALS(H1<>"";"";ALS(E1="";D1;D1&"-"&ALS(G1<>"";G1;ALS(F1<>"";F1;E1))))))

als in 6 cellen tekst staat, moet de volgende formule worden ingevoerd:

ALS(C1="";"";ALS(ALS(I1<>"";"";ALS(E1="";D1;D1&"-"&ALS(H1<>"";H1;ALS(G1<>"";G1;ALS(F1<>"";F1;E1)))))=0;"NIET IN MATRIX";ALS(I1<>"";"";ALS(E1="";D1;D1&"-"&ALS(H1<>"";H1;ALS(G1<>"";G1;ALS(F1<>"";F1;E1)))))))



ik heb geprobeerd dit te doen met ALS(AANTALARG(B5:B10)=....
maar dan word de formule te groot.
ik denk zelf dat dit beter kan in visual basic, maar ik krijg het zelf niet voor elkaar om hier een programma voor te schrijven.
het is de bedoeleing dat de formule in cel k1 geplaatst word maar ook dat dit automatisch word doorgevoerd tot en met k100


wie kan mij hier bij helpen?


met vriendelijke groet,

Gammelkeunited
 
Zoiets dan:

Code:
Sub ff()
    
    Select Case Application.WorksheetFunction.CountA(Range("B5:B10"))
        
        Case 1: 'bla bla bla
        
        Case 2: 'bla bla bla
        
        'bla bla bla
        
        Case 6:

            Range("K1:K100").Formula = _
                Replace("=IF(R1C3="""","""",IF(IF(R1C9<>"""","""",IF(R1C5="""",R1C4,R1C4&""-""&IF(R1C8<>"""",R1C8,IF(R1C7<>"""",R1C7,IF(R1C6<>"""",R1C6,R1C5)))))=0,""NIET IN MATRIX"",IF(R1C9<>"""","""",IF(R1C5="""",R1C4,R1C4&""-""&IF(R1C8<>"""",R1C8,IF(R1C7<>"""",R1C7,IF(R1C6<>"""",R1C6,R1C5)))))))", "$", "")
                
            
    End Select

End Sub

Al zal je eerst die functies moeten nakijken, want kans is groot dat dat wel beter kan.

Wigi
 
Zoiets dan:

Code:
Sub ff()
    
    Select Case Application.WorksheetFunction.CountA(Range("B5:B10"))
        
        Case 1: 'bla bla bla
        
        Case 2: 'bla bla bla
        
        'bla bla bla
        
        Case 6:

            Range("K1:K100").Formula = _
                Replace("=IF(R1C3="""","""",IF(IF(R1C9<>"""","""",IF(R1C5="""",R1C4,R1C4&""-""&IF(R1C8<>"""",R1C8,IF(R1C7<>"""",R1C7,IF(R1C6<>"""",R1C6,R1C5)))))=0,""NIET IN MATRIX"",IF(R1C9<>"""","""",IF(R1C5="""",R1C4,R1C4&""-""&IF(R1C8<>"""",R1C8,IF(R1C7<>"""",R1C7,IF(R1C6<>"""",R1C6,R1C5)))))))", "$", "")
                
            
    End Select

End Sub

Al zal je eerst die functies moeten nakijken, want kans is groot dat dat wel beter kan.

Wigi
Of zoiets, wellicht zou de formule nog zimpeler kunnen worden opgebouwd, maar ja
Code:
Private Sub ff()
    Dim Frml(6) As String
    Frml(1) = "=ALS(D1="""";""NIET IN MATRIX"";"""")"
    Frml(2) = "=ALS(C1="""";"""";ALS(ALS(E1<>"""";"""";D1)=0;""NIET IN MATRIX"";ALS(E1<>"""";"""";D1)))"
    Frml(3) = "=ALS(C1="""";"""";ALS(ALS(F1<>"""";"""";ALS(E1="""";D1;D1&""-""&E1))=0;""NIET IN MATRIX"";ALS(F1<>"""";"""";ALS(E1="""";D1;D1&""-""&E1)))"
    Frml(4) = "=ALS(C1="""";"""";ALS(ALS(G1<>"""";"""";ALS(E1="""";D1;D1&""-""&ALS(F1<>"""";F1;E1)))=0;""NIET IN MATRIX"";ALS(G1<>"""";"""";ALS(E1="""";D1;D1&""-""&ALS(F1<>"""";F1;E1)))))"
    Frml(5) = "=ALS(C1="""";"""";ALS(ALS(H1<>"""";"""";ALS(E1="""";D1;D1&""-""&ALS(G1<>"""";G1;ALS(F1<>"""";F1;E1))))=0;""NIET IN MATRIX"";ALS(H1<>"""";"""";ALS(E1="""";D1;D1&""-""&ALS(G1<>"""";G1;ALS(F1<>"""";F1;E1))))))"
    Frml(6) = "=ALS(C1="""";"""";ALS(ALS(I1<>"""";"""";ALS(E1="""";D1;D1&""-""&ALS(H1<>"""";H1;ALS(G1<>"""";G1;ALS(F1<>"""";F1;E1)))))=0;""NIET IN MATRIX"";ALS(I1<>"""";"""";ALS(E1="""";D1;D1&""-""&ALS(H1<>"""";H1;ALS(G1<>"""";G1;ALS(F1<>"""";F1;E1)))))))"
    
    Range("K1:K100").Formula = Replace(Frml(Application.WorksheetFunction.CountA(Range("B5:B10"))), "$", "")

End Sub

Wim
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan