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

Excel automatisch dingen laten gebeuren

Status
Niet open voor verdere reacties.

ciccio

Nieuwe gebruiker
Lid geworden
8 okt 2014
Berichten
3
Hallo vrienden van het net.

Ik ben leerkracht in enkele technische vakken maar geen held in office. Meer bepaald in Excel.

Graag wil ik een volgsyteem maken voor mijn leerlingen en dingen automatisch laten gebeuren zodat ik zo min mogelijk werk heb bij iedere nieuwe klas.

Het volgsysteem bevat een klas lijst waar ik per vak cijfers invul en deze cijfers moeten automatisch overgenomen worden in een afzonderlijke tabblad dat de naam van de leerling heeft.

Graag zou ik willen nadat ik de klaslijst hebt ingevuld dat Excel automatisch de tabbladen maakt per lln aan de hand van de invulde klaslijst en automatisch de rij met de cijfers van een bepaalde leerling ook nog in de lijst automatisch linkt. Zodat bij iedere tabblad de juiste cijfers zijn.

Na wat te zoeken op dit forum is het me gelukt om ervoor te zorgen dat via een macro de tabbladen automatisch gemaakt worden maar ze nemen niet de juiste naam aan die ik zou willen.

Hopelijk is mijn probleem duidelijk genoeg.

Kan iemand mij helpen ben al heel de dag aan zoeken maar lukt niet. Bekijk bijlage Volgsysteem 2014-2015.xlsx
 
In welke vakken geeft u zoal les? Technische vakken zonder kennis van Excel lijken mij nagenoeg onmogelijk. In het bijgevoegde bestand staat geen code. En verder zou ik, als ik docent was, een cursus typen/spelling nemen.
 
Hallo Jean-Paul

Ik ben leerkracht in de elektriciteit. En heb nooit gezegd dat ik geen kennis heb van Excel! Het programmeren in Excel gaat verder dan mijn kennis en heeft weinig te maken met elektro. De code die ik erbij geschreven had door gebruik te maken van jullie site is de volgende.

Sub Tabbladen_deelnemer()
With Sheets("Klaslijst en gegevens")
For Each cl In .Range("E3:E" & .Cells(Rows.Count, 1).End(xlUp).Row)
If Not WSExists(CStr(cl)) Then
Sheets("Deelnemer").Copy , Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = cl
End If
Next
End With
End Sub

Function WSExists(wsName As String) As Boolean
On Error Resume Next
WSExists = Worksheets(wsName).Name = wsName
End Function


De tabbladen automatisch maken lukt als ik "Sheets(Sheets.Count).Name = cl" weglaat.

Het lastige is het automatisch overbrengen van cijfers in iedere map van iedere lln. Excel moet weten dat hij telkens een rij naar beneden zal moeten gaan om deze gegevens automatisch over te brengen.

Verder schrijffouten of onjuistheden in tekst zijn dingen die wel eens gebeuren mijn excuses daarvoor. By the way zowel huistaak als testproef schrijf je aan elkaar vast.
Bekijk bijlage Versie 1 Volgsysteem 2014-2015.xlsmBekijk bijlage Versie 1 Volgsysteem 2014-2015.xlsm
 
Laatst bewerkt:
Als je code plaatst doe dit dan tussen codetags. Met F8 kan je in de VB-editor door de code "wandelen". Hoewel je maar één naam hebt ingevuld, zal je zien dat het lusje vaker doorlopen wordt. Cl krijgt dan de waarde "". De naam van een tabje mag niet leeg zijn dus een foutmelding.

Code:
For Each cl In .Range("E3:E" & .Cells(Rows.Count, 1).End(xlUp).Row)
de ,1 moet je weglaten anders worden opgemaakte cellen ook meegeteld. En omdat je vanaf de derde rij wil zoeken en de eerste rij leeg is zal het zoiets moeten worden:

Code:
For Each cl In .Range("E3:E" & .Cells(Rows.Count).End(xlUp).Row + 2)
 
Hallo VenA,

dank je voor je hulp.

Ik zou nl het volgende willen doen.

Vanuit het tabblad cijferlijst automatisch de gegevens overbrengen in het tabblad van de deelnemer (op naam) . Bijvoorbeeld voor de heer Van de Ven zou ik de gegevens uit rij 5 halen in het tabblad cijferlijst. Ik heb een macro opgenomen die deze handeling doet voor blok 1, want er komen meerdere blokken.

Hoe kan ik dit het beste aanpakken.

Alvast mijn dank.

In bijlage het resultaat tot nu.Bekijk bijlage Versie 1 Volgsysteem 2014-2015.xlsm
 
Wat is dit voor onzin.
Code:
For Each cl In .Range("E3:E" & .Cells(Rows.Count, 1).End(xlUp).Row)
de ,1 moet je weglaten anders worden opgemaakte cellen ook meegeteld.


Als je de rijen wilt tellen tot de laatst ingevulde cel van kolom E, pak dan kolom E.
Code:
For Each cl In .Range("E3:E" & .Cells(Rows.Count, 5).End(xlUp).Row + 2)
Hier een testje voor je V&A.
Code:
MsgBox .Range("E3:E" & .Cells(Rows.Count).End(xlUp).Row).Address
en:
Code:
MsgBox .Range("E3:E" & .Cells(Rows.Count,5).End(xlUp).Row).Address
 
Laatst bewerkt:
Beste HSV,

Dat je alles beter weet en kan is inmiddels wel bekend. Maar als je en quote gebruikt, waarbij je zegt dat het complete onzin is, dan wel graag de juiste quote gebruiken.
Als je de rijen wilt tellen tot de laatst ingevulde cel van kolom E, pak dan kolom E.
Code:
For Each cl In .Range("E3:E" & .Cells(Rows.Count, 5).End(xlUp).Row + 2)
heb ik volgens mij nergens geschreven.

@Edit Zet even aan dat je gewoon zichtbaar bent op een forum.
 
Laatst bewerkt:
1). Bekijk de laatste update tijd eens.
2). Maakt het verschil voor je?
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan