Tehoa taulukon käsittelyyn

1x2

Hei. Olen kopsannut netistä taulukoita välilehdille ja niistä koonnut yhtenäisen taulukon. Mun osaamisella jo kuudella välilehdellä olevien taulukoiden kasaamisessa menee reilut 8,5 min. Tohon nopeuteen mä pyytäsin apuu, niin tulis homma mielekkäämmäks.
Tos olis yhen kopioidun (Ottelut) taulukon osote, jos siit on apuu. Ylärivin nimet oon muuttanu samanlaiseks kuin vasemmas laidas on.
https://fi.wikipedia.org/wiki/Englannin_Valioliigan_kausi_2015–2016

Sub Lue_Data()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim r1 As Integer
Dim r2 As Integer
Dim solu As Range
Application.ScreenUpdating = False
ActiveSheet.Unprotect
r1 = 9: r2 = 9
For i = 6 To Sheets.Count
For j = 2 To 21
For k = 2 To 21
Range("A" & r1) = Sheets(i).Range("A" & j)
If Range("A" & r1) <> Sheets(i).Range("A" & k) Then
Range("B" & r1) = Sheets(i).Range("A" & k)
r1 = r1 1
Else
Range("A" & r1) = ""
End If
Next
For Each solu In Sheets(i).Range("B" & j & ":U" & j)
If solu <> "" Then
Range("C" & r2) = solu
Range("F" & r2) = Sheets(i).Name
r2 = r2 1
End If
Next
Next
Next
ActiveSheet.Protect
Application.ScreenUpdating = True
End Sub

4

392

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • lisäätietoja

      Tuleeko taulukosta kuitenkin sellainen kuin haluat?
      Esim. tämä rivi kirjoittaa samaan soluun 20 kertaa:
      Range("A" & r1) = Sheets(i).Range("A" & j)

    • 1x2

      Just sellanen kun pitää. Siis se toimii ja on käytössä, mutta niin pirullisen hidas,. Eli A-sarakkeeseen 19 riviä allekkain kotijoukkue (sama) ja B-sarakkeeseen vierasjoukkueet, sekä C-sarakkeeseen tulos. Sit seuraavat "joukkueet" noitten alle samalla systeemillä. Esim. tos kuuden pelikauden tilastossa on vajaat 2300 rivii tuloksii

    • Kundepuu

      Sub Fiksattu()
      Dim Tilasto As Worksheet
      Dim Alue As Variant
      Dim Alue2 As Variant
      Dim Solu As Range
      Dim j As Long
      Dim k As Long
      Dim vika As Long

      Application.ScreenUpdating = False
      ActiveSheet.Unprotect
      Set Tilasto = ActiveSheet
      Tilasto.Range("A:F") = ""
      k = 0
      For i = 6 To Sheets.Count
      For Each Solu In Worksheets(i).Range("A2:A21")
      vika = Tilasto.Cells(Rows.Count, "A").End(xlUp).Row 1
      If vika < 9 Then vika = 9
      Range(Cells(vika, "A"), Cells(vika 19, "A")).Value = Solu
      Range(Cells(vika, "F"), Cells(vika 19, "F")).Value = Worksheets(i).Name
      Next Solu
      For j = 1 To 20
      Alue = Worksheets(i).Range("B1:U1").Value
      Tilasto.Range("B9").Offset(k, 0).Resize(20, 1) = Application.WorksheetFunction.Transpose(Alue)
      Alue2 = Worksheets(i).Range("B1:U1").Offset(j).Value
      Tilasto.Range("C9").Offset(k, 0).Resize(20, 1) = Application.WorksheetFunction.Transpose(Alue2)
      k = k 20
      Next
      Next
      vika = Tilasto.Cells(Rows.Count, "A").End(xlUp).Row 1
      Tilasto.Range("C9:C" & vika).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
      ActiveSheet.Protect
      Application.ScreenUpdating = True
      End Sub


      Keep EXCELing
      @Kunde

    • 1x2

      Kiitti koodista, toimii hienosti. En vain älynny kertoo kaikkee.
      Laitan toiveet, jos sais nää muutettuu.

      Rivit 1-8 säilys muuttumattona (sisältää otsikoita ja muuta tekstii, nyt tyhjenee)
      Sarakkeet A-F riviltä 9 lähtien säilyttäs kohteen muotoilun
      Sarakkeissa D-E olevat kaavat säilyisivät, nyt häippäsee

      Saisko jonkun tämmösen rivin C-sarakkeen välimerkin mahdollista muuttamista varten.
      Ottasin sen tarvittaessa käyttöön (ollut yhdellä sivulla erilainen merkki).
      Selection.Replace What:="–", Replacement:="-", SearchOrder:=xlByColumns, MatchCase:=True

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Porvarimediat paniikissa demareiden huiman kannatuksen vuoksi

      Piti sitten keksiä "nimettömiin lähteisiin" perustuen taas joku satu. Ovat kyllä noloja, ja unohtivat sen, että vaalit
      Maailman menoa
      165
      8416
    2. KATASTROFI - Tytti Tuppurainen itse yksi pahimmista kiusaajista!!!

      STT:n lähteiden mukaan SDP:n eduskuntaryhmän puheenjohtaja Tytti Tuppurainen on käyttäytynyt toistuvasti epäasiallisesti
      Maailman menoa
      448
      7560
    3. Mikä siinä on ettei persuille leikkaukset käy?

      On esitetty leikkauksia mm. haitallisiin maataloustukiin, kuin myös muihin yritystukiin. Säästöjä saataisiin lisäksi lei
      Maailman menoa
      74
      3864
    4. Lääppijä Lindtman jäi kiinni itse teosta

      Lindtman kyselemättä ja epäasiallisesti koskettelee viestintäpäällikköä. https://www.is.fi/politiikka/art-2000011780852
      Maailman menoa
      156
      3629
    5. Juuri nyt! Tytti Tuppurainen on käyttäytynyt toistuvasti epäasiallisesti

      Ai että mä nautin, Tytti erot vireille! "Käytös on kohdistunut avustajia ja toisia kansanedustajia kohtaan, uutisoi STT
      Maailman menoa
      118
      3044
    6. Huomaatteko Demari Tytti ei esitä pahoitteluitaan

      Samanlainen ilmeisesti kuin Marin eli Uhriutuu no he ovat Demareita ja muiden yläpuolella siis omasta mielestään
      Maailman menoa
      54
      2745
    7. Turvaan tulleet lähettävät omia lapsiaan vaaraan - hullua

      MOT-ohjelman jakso ”Loma vaihtui kahleisiin” kertoi, kuinka Suomessa ja muualla Euroopassa asuvat somaliperheet lähettäv
      Maailman menoa
      42
      2046
    8. Onko kaivattusi

      liian vetovoimainen seksuaalisesti?
      Ikävä
      126
      2036
    9. Puolen vuoden koeaika

      Voisi toimia meillä. Ensin pitäis selvittää "vaatimukset" puolin ja toisin, ennen kuin mitään aloittaa. Ja matalalla pro
      Ikävä
      23
      1883
    10. Vedonlyöntiä .

      Olen valmis lyömään ison vedon , että homma kaatuu . Jos kerta Sivonen ei lähde mukaan , niin ei tuoho usko kukaan muuka
      Ähtäri
      21
      1681
    Aihe