User Tools

Site Tools


tanszek:oktatas:muszaki_informatika:vba_gyakorlas

This is an old revision of the document!


Feladat

Írja ki az A1, B1 és C1 cellákba: “Neptun kód”, “Pont”, “Jegy” egy szubrutin segítségével.


Sub Feladat()    
    Cells(1, "A").Value = "Neptun kód"
    Cells(1, "B").Value = "Pont"
    Cells(1, "C").Value = "Jegy"
End Sub    


Írjon VBA függvényt ami olyan kódokat generál véletlenszerűen, ami 6 karakterből áll és minden karakter nagybetű lehet.

Function GeneralNEPUNKod_Nagybetus() As String
    Dim kod As String
    Dim i As Integer
    Dim r As Integer
    
    kod = ""
    Randomize ' a véletlen generálást inicializáljuk
    
    For i = 1 To 6
        r = Int(Rnd() * 26) + Asc("A") ' A–Z 26 karakter
        kod = kod & Chr(r)
    Next i
    
    GeneralNEPUNKod_Nagybetus = kod
End Function


Töltse fel az A1 és A15 közötti cellákat ezekkel a véletlen string-ekkel a korábbi szubrutinhoz hozzáadva a kódot:

Sub Feladat()
    Dim i As Integer
    
    Cells(1, "A").Value = "Neptun kód"
    Cells(1, "B").Value = "Pont"
    Cells(1, "C").Value = "Jegy"
    
    For i = 1 To 15
       Cells(i, "A").Value = GeneralNEPUNKod_Nagybetus
    Next
End Sub


A B2 cellától lefelé generáljon 15 ZH pontot 0-100 ig.

Sub Feladat()
    Dim i As Integer
    
    Cells(1, "A").Value = "Neptun kód"
    Cells(1, "B").Value = "Pont"
    Cells(1, "C").Value = "Jegy"
    
    For i = 2 To 15
       Cells(i, "A").Value = GeneralNEPUNKod_Nagybetus
       Cells(i, "B").Value = Int(Rnd() * 100)
    Next
End Sub


Írjon egy függvényt, ami a 50 pont fölötti pontokat “megfelelt”-nek jelzi a “C” oszlopban, a többit “Elégtelen”-nek.

Function osztalyoz(pont As Integer)
    If pont > 50 Then
        osztalyoz = "Megfelel"
    Else
        osztalyoz = "Elégtelen"
    End If
End Function

Majd építse bele a Feladat() szubrutinba a függvényt:

Sub Feladat()
    Dim i As Integer
    
    Cells(1, "A").Value = "Neptun kód"
    Cells(1, "B").Value = "Pont"
    Cells(1, "C").Value = "Jegy"
    
    For i = 2 To 15
       Cells(i, "A").Value = GeneralNEPUNKod_Nagybetus
       Cells(i, "B").Value = Int(Rnd() * 100)
       Cells(i, "C").Value = osztalyoz(Cells(i, "B").Value)
    Next
End Sub

tanszek/oktatas/muszaki_informatika/vba_gyakorlas.1744783524.txt.gz · Last modified: 2025/04/16 06:05 by knehez