Telefonszámunk: 1-472-0679

Makró készítés/használat táblázat autómatizáláshoz, sorbarendezéshez.

Kezdőlap Fórumok Excel programozás Makró készítés/használat táblázat autómatizáláshoz, sorbarendezéshez.

3 bejegyzés megtekintése - 1-3 / 3
  • Szerző
    Bejegyzés
  • #1423
    Laller
    Felhasználó

      Táblázatkezeléssel kapcsolatban szeretnék segítséget kérni. Office 2007-et használok. Excelben szeretnék egy sport tabellát készíteni. A kérdésem az lenne hogy tudom megcsinálni azt, hogy a táblázatban az utolsó oszlopba beírt számok (pontok), fentről lefelé csökkenő sorrendben automatikusan rendeződjenek. Próbálkoztam volna makróval, de nem sikerült. Nem régóta használom ezért ennyire még nem értek a makróhoz.

      #1474
      horvimi
      Adminisztrátor

        A problémát eseménykezelő makróval lehet megoldani.
        Az esemény az, hogy az adott munkalapon megváltozik egy cella tartalma.
        Ezt így leírva meglehetősen hosszadalmas lesz, de megpróbálom:
        Feltételezem, hogy a táblázatod folyamatosan ki van töltve, és a pontok az “F”, azaz az 5. oszlopban vannak. Tehát, ha az 5. oszlopban bármelyik cella megváltozik, akkor a táblázatot az 5. oszlop szerint rendezi csökkenő sorrendben.
        Lépések:
        1. Legyen az aktív cella azon a munkalapon, ahol a táblázatod van
        2. Lépj át a VBE felületre (ALT-F11)
        3. Ha nem látszik, kapcsold be a Projekt ablakot (Ctrl+R)
        4. Kattints a projekt ablakban duplán a táblázatot tartalmazó Sheet-re
        5. A jobb oldalon a kód ablakba másold be ezt a kódot:
        ——————————————————————-
        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim col As Integer
        col = 5
        If Target.Column = col Then
        ActiveSheet.sort.SortFields.Add Key:=ActiveCell, _
        SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
        With ActiveSheet.sort
        .SetRange ActiveCell.CurrentRegion
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
        End With
        End If
        End Sub
        ————————————————————
        6. Ha nem az 5. oszlopban vannak a pontszámok, akkor változtasd meg a col=5 sort másik számra.
        7. Menj vissza az Excel lapra
        8. Próbáld ki, hogy beírsz egy új sort, vagy csak egy új pontszámot a végére.
        Jó szórakozást!
        Horváth Imre

        #1472
        Laller
        Felhasználó

          Köszönöm, sikerült megcsinálni! Bár néha nem azonnal rendeződnek sorrendbe a cellák, olyankor ki is ír valami hibaüzenetet a Visual Basic. Nem tudom ez miért van.

          Run-time error ‘1004’
          Érvénytelen a rendezési hivatkozás. Győzödjön meg arról hogy a hivatkozás a rendezni kivánt adatok között szerepel, és hogy az első Rendezze mező nem ugyanaz vagy nem üres. 3 választási lehetőség: END DEBUG HELP

          És persze nagyon jó lenne érteni is amit bemásoltam a kódablakba.

        3 bejegyzés megtekintése - 1-3 / 3
        • Be kell jelentkezni a hozzászóláshoz.