• 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.

Probleem macro met inputbox

Status
Niet open voor verdere reacties.

dido04

Gebruiker
Lid geworden
12 jan 2016
Berichten
21
Ik wil graag dat excel een datum die ik ingeef in de inputbox vergelijkt met data in de spreadsheet en de gegevens van een accorderende cel in een nieuw tabblad plaats. Als ik een datum ingeef dan lukt het, als ik met de inputbox werk, dus de tekst vervang door de zoekterm1 dan lukt het niet.

Sub DAGSTATISTIEKEN()
Dim zoekterm1 As String


zoekterm1 = Application.InputBox("Voor welke dag wil je de statistieken?")

Range("A3").Select
ActiveCell.FormulaR1C1 = _
"=IF(LEERKRACHTEN!RC[4]=zoekterm1,LEERKRACHTEN!RC[8],"""")"
Selection.AutoFill Destination:=Range("A3:A79"), Type:=xlFillDefault
Range("A3:A79").Select
Range("A1").Select
End Sub
 
Als je iets een een textbox ingeeft is dat altijd een string. Die zal je dus eerst moeten converteren naar een echte datum.
 
Vervang dit:

ActiveCell.FormulaR1C1 = _
"=IF(LEERKRACHTEN!RC[4]=zoekterm1,LEERKRACHTEN!RC[8],"""")"

door:

ActiveCell.FormulaR1C1 = _
"=IF(LEERKRACHTEN!RC[4]=" & zoekterm1 & ",LEERKRACHTEN!RC[8],"""")"
 
Oplossing werkt niet.

Vervang dit:

ActiveCell.FormulaR1C1 = _
"=IF(LEERKRACHTEN!RC[4]=zoekterm1,LEERKRACHTEN!RC[8],"""")"

door:

ActiveCell.FormulaR1C1 = _
"=IF(LEERKRACHTEN!RC[4]=" & zoekterm1 & ",LEERKRACHTEN!RC[8],"""")"

Als ik de macro nu uitvoer dan wordt er in de respectieve cellen (vb. cel A8) de tekst =ALS(LEERKRACHTEN!E8=11/1/2016;LEERKRACHTEN!I8;"") gezet. Bedoeling is dat Excel gaat zoeken in tabblad LEERKRACHTEN naar alle aanwezigheidspercentages in cel RC[8] van de verschillende leerkrachten. Als ik in de macro de zoekterm vervang door een datum en dus niet met een inputbox werk, dan lukt het wel.

Groetjes
 
Je kan natuurlijk ook overwegen om een voorbeeld bestandje bij te voegen. Werkt over het algemeen wat beter om tot een oplossing te komen.
 
Of probeer wat ik zei:
Code:
zoekterm1 = DateValue(Application.InputBox("Voor welke dag wil je de statistieken?"))
 
Of:
Code:
range("a3") = "=IF(LEERKRACHTEN!RC[4]=datevalue(""" & zoekterm1 & """),LEERKRACHTEN!RC[8],"""")"
 
Vreemd, bij mij werkt die methode niet namelijk.
 
Vreemd, bij mij werkt die methode niet namelijk.

Ja inderdaad... Ik had te vroeg geroepen, bij mij werkt het ook niet! Ik heb mijn vraag op een andere manier terug op het forum geplaatst.
 
Zou het er beter op worden om dezelfde vraag nog een keer te stellen?

Heb je de code die ik plaatste al getest?
Daarna vernemen we het wel.
 
Plaats een voorbeeld document.
 
Nog altijd problemen

Hallo allemaal

Ik dacht dat mijn probleem opgelost was, niet dus... Ik probeer mijn vraag eens op een andere manier te stellen. Ik heb onderstaande macro gemaakt, die perfect werkt. Alleen moet ik nu telkens de datum waarvoor ik de statistieken wil gaan maken veranderen door de macro te bewerken. Vandaar dat ik getracht heb om met een inputbox te werken maar dat lukt niet.

Mijn originele macro die perfect werkt is de volgende:

Sub DAGSTATISTIEKEN()
Sheets("STATISTIEKEN PER DATUM").Select
Range("A3").Select
ActiveCell.FormulaR1C1 = _
"=IF(LEERKRACHTEN!RC[4]=""08/01/2016"",LEERKRACHTEN!RC[8],"""")"
Selection.AutoFill Destination:=Range("A3:A79"), Type:=xlFillDefault
Range("A3:A79").Select
Range("A1").Select
End Sub

Maar zoals gezegd, ik zou graag hebben dat Excel mij een datum vraagt, en dat ik die niet telkens moet gaan aanpassen door de macro te bewerken.

Dank voor jullie hulp
 
Nog altijd staat mijn vraag open!

Hier werkt het prima, dus wat is het probleem.
Als jij nergens op reageert, dan hou ik het voor gezien.
 
Er is nu twee keer gevraagd om een voorbeeld bestandje omdat de geplaatste codes wel degelijk kunnen werken alleen is het gissen wat er in jouw bestand staat. (klik op Ga geavanceerd en vervolgens op de paperclip)
 
Problemen met inputbox

Ik heb volgende macro.

Als ik zelf de datum (die de eigenschap tekst heeft, dus geen datum/tijd) invoer dan werkt deze perfect.
Als ik de datum via een inputbox wil ingeven (zie hieronder) dan werkt de macro (geen foutmeldingen) maar selecteert de autofilter geen waarden.

Sub STATISTIEK()

Dim Dag As String 'Opgelet: de data in mijn tabellen hebben het formaat tekst!

Dag = Application.InputBox("Voor welke dag wil je statistieken?")

Range("B2:J2").Select
Selection.AutoFilter
ActiveSheet.Range("$B$2:$J$1626").AutoFilter Field:=5, Criteria1:= _
"Dag"
End Sub

Kan iemand mij helpen? Dank u
 
Opgelost

Hallo allemaal, ik heb het opgelost. De dag moest gewoon niet tussen ""! Logisch, in het eerste geval is het zelf ingevoerde tekst dus tussen "", in mijn geval is het een variabele. Ben blij dat het in orde gekomen is, nu kan ik verder werken aan mijn statistieken.

Bedankt aan allen voor de hulp!
 
Volgens mij ben je een beetje in de war geraakt door al je vraagstelling op het forum.
In #1 zie ik nergens dat het over een autofilter gaat.
Enkel een formule plaatsen in wat cellen.
Goede raad voor je volgende vraag; plaats een Excel bestand een een goede omschrijving, en reageer op reacties.
 
Zal ik doen... in het begin was er ook helemaal geen sprake van een autofilter, maar ik ben blijven experimenteren tot wat ik wou lukte. Momenteel werkt alles prima... Bij een volgende vraag, bestandje uploaden...

Groetjes
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan