Tietojen tuominen toisesta työkirjasta makrolla

rampeka

1. Suomenkielinen excel. Työkirjat malli_01 ja toinen työkirja malli_02 sarakkeita a:sta p:en ja rivejä 1000.
Pitäisi tuoda malli_01 :een malli_02:sta sarakke ja rivitiedot ja seljälkeen järjestää rivit sarakkeen A mukaan aakkosjärjestykseen.

2. Sama työkirja ja kaksi taulukkoa. Pitäisi tuoda malli_01 :een malli_01b:sta sarakke ja rivitiedot malli_01:een ja seljälkeen järjestää rivit sarakkeen A mukaan aakkosjärjestykseen.

3. Työkirjat malli_01 ja toinen työkirja malli_04 sarakkeita a:sta p:n ja rivejä 1000. Pitäisi poistaa koko rivitieto malli_01:sta jos sarakkeista A,C ja D jos löytyy sama tieto kuin malli_04 sarakkeista A,C ja D
3 erillistä makroa

2

316

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Muuttele nimet ja polut oikeaksi

      Sub Makro1()
      Dim polku As String
      Dim tiedostonnimi As String
      Dim lähde As Workbook

      polku = "C:\"
      tiedosto = "malli_02"
      Worksheets("Taul1").Range("A:P") = ""

      Set lähde = Workbooks.Open(polku & tiedosto)

      ThisWorkbook.Worksheets("Taul1").Range("A1:P1000").Value = lähde.Sheets("Taul1").Range("A1:P1000").Value
      lähde.Close False
      Range("A1").Select
      ActiveWorkbook.Worksheets("Taul1").Sort.SortFields.Clear
      ActiveWorkbook.Worksheets("Taul1").Sort.SortFields.Add Key:=Range("A1:A20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
      With ActiveWorkbook.Worksheets("Taul1").Sort
      .SetRange Range("A1:P1000")
      .Header = xlGuess
      .MatchCase = False
      .Orientation = xlTopToBottom
      .SortMethod = xlPinYin
      .Apply
      End With
      End Sub

      Sub Makro2()
      Worksheets("Taul1").Range("A:P") = ""
      Worksheets("Taul1").Range("A1:P1000").Value = Worksheets("Taul2").Range("A1:P1000").Value
      Range("A1").Select
      ActiveWorkbook.Worksheets("Taul1").Sort.SortFields.Clear
      ActiveWorkbook.Worksheets("Taul1").Sort.SortFields.Add Key:=Range("A1:A20"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
      With ActiveWorkbook.Worksheets("Taul1").Sort
      .SetRange Range("A1:P1000")
      .Header = xlGuess
      .MatchCase = False
      .Orientation = xlTopToBottom
      .SortMethod = xlPinYin
      .Apply
      End With
      End Sub

      Sub Makro3()
      Dim vika As Long
      Dim löydetty As Range
      Dim löydetty2 As Range
      Dim polku As String
      Dim tiedostonnimi As String
      Dim lähde As Workbook
      Dim solu As Range
      Application.DisplayAlerts = False
      On Error Resume Next
      Worksheets("Huuhaa").Delete
      On Error GoTo virhe
      Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = "Huuhaa"
      polku = "C:\"
      tiedosto = "malli_04"

      Set lähde = Workbooks.Open(polku & tiedosto)

      ThisWorkbook.Worksheets("Huuhaa").Range("F1:I1000").Value = lähde.Sheets("Taul1").Range("A1:D1000").Value
      lähde.Close False
      ThisWorkbook.Worksheets("Taul1").Range("A1:D1000").Copy Worksheets("Huuhaa").Range("A1:D1000")
      With Worksheets("Huuhaa").Range("E1")
      .FormulaR1C1 = "=RC[-4]&RC[-3]&RC[-1]"
      .AutoFill Destination:=Range("E1:E20")
      End With
      With Worksheets("Huuhaa").Range("J1")
      .FormulaR1C1 = "=RC[-4]&RC[-3]&RC[-1]"
      .AutoFill Destination:=Range("J1:J20")
      End With
      vika = Worksheets("Huuhaa").Range("J65536").End(xlUp).Row
      For Each solu In Worksheets("Huuhaa").Range("J1:J" & vika)
      Set löydetty = EtsiJaSiirrä(solu, Columns("E:E"))
      If Not löydetty Is Nothing Then
      If löydetty2 Is Nothing Then
      Set löydetty2 = löydetty
      Else
      Set löydetty2 = Union(löydetty2, löydetty)
      End If
      End If
      Next
      Worksheets("Taul1").Range(löydetty2.Address).EntireRow.Delete
      virhe:
      ThisWorkbook.Worksheets("Huuhaa").Delete
      Application.DisplayAlerts = True
      End Sub

      Function EtsiJaSiirrä(Hakuehto As Variant, HakuAlue As Range) As Range
      Dim solu As Range
      Dim EkaOsoite As String
      Worksheets("Huuhaa").Activate
      With HakuAlue
      Set solu = .Find( _
      What:=Hakuehto, _
      LookIn:=xlValues, _
      LookAt:=xlWhole, _
      SearchOrder:=xlByRows, _
      SearchDirection:=xlNext, _
      MatchCase:=False, _
      SearchFormat:=False)
      If Not solu Is Nothing Then
      Set EtsiJaSiirrä = solu
      EkaOsoite = solu.Address
      Do
      Set EtsiJaSiirrä = Union(EtsiJaSiirrä, solu)
      Set solu = .FindNext(solu)
      Loop While Not solu Is Nothing And solu.Address <> EkaOsoite
      End If
      End With
      End Function


      Keep EXCELing
      @Kunde

      • Tänks... testaillaan....


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

    Luetuimmat keskustelut

    1. Muistakaa persut, että TE petitte, ei kokoomus

      Miksikö kukaan ei arvostele kokoomusta? No sen vuoksi, että kokoomus noudattaa vaalilupauksiaan. Sen sijaan TE persut,
      Maailman menoa
      137
      3176
    2. Seuraava hallituspohja - Kokoomus, kepu, persut + KD

      Kokoomus saa ainakin 20% kannatuksen ensi vaaleissa, keskusta sanoisin noin 15%, persut todennäköisesti enemmän, ehkä 17
      Maailman menoa
      221
      2810
    3. Outo ilmiö - vasemmistolaiset eivät kirjoita mitään kokoomuksesta

      joka sentään johtaa hallitusta, ja jonka talouspolitiikkaa noudatetaan. Nämä muutamat vasemmistolaiset jotka täällä aina
      Maailman menoa
      66
      2200
    4. Maria Veitola kommentoi soutelija Saarion huomionhakuisuutta

      "Minusta on jotenkin kuvottavaa, kuinka kovalla intensiteetillä Suomi-media seuraa miessankari Jari Saarion merihätää. S
      Kotimaiset julkkisjuorut
      277
      1599
    5. Väestöstä vain vassarit vaihtuvat nopeammin kuin persut

      Kevääseen 2023 verrattuna vassareita 50 prosenttia enemmän, ja persuja 25 prosenttia vähemmän.
      Maailman menoa
      5
      1473
    6. Vihervassarit

      Vihervassarit sitä, vihervassarit tätä. Minulla on paha mt-ongelma. Se tuli lobotomian jälkioireina. Vihervassarit tät
      Maailman menoa
      25
      1352
    7. Lopetan ikävöinnin

      Ei meistä enää koskaan tule mitään. Olen ikävöinyt ja kaivannut enkä saa mitään vastakaikua ja lämpöä. Parempi erillään
      Ikävä
      3
      1241
    8. Ei ole liian myöhäistä..

      Tule mun luo ja katso silmiin, niin saadaan taas se sanaton yhteys ja sano sitten vain anteeksi rakas ja suutele ja hala
      Ikävä
      3
      972
    9. Ei osattu ratkaista etääntymistä

      Mä jäädyin eikä sulla ole taitoa sulattaa. Parempi antaa olla, vaikka toivoin jotain muuta. Miehelle.
      Ikävä
      115
      910
    10. Esprit hoitokdit Varkaudessa?

      Asun keskisuomessa ja käyn satunnaisesti äitini luona Varkaudessa. Äitin tarvitsee kohta hoitajan kotiin tai hoitokodin
      Varkaus
      103
      893
    Aihe