Tarvitsisin apua seuraavassa makroasiassa:
Tein makron, joka kopioi tietoa suodatuksen perusteella toiseen taulukkoon. Olen saanut räpellettyä nauhoittamalla seuraavan:
Selection.AutoFilter
Selection.AutoFilter Field:=7, Criteria1:="kissa"
Cells.Select
Selection.Copy
Workbooks.Open Filename:="\\palvelin\kotihakemisto\testi2.xls"
Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWorkbook.Close
Windows("testi.xls").Activate
Makro siis kopioi kaikki tiedot, joissa on kissa sarakkeessa 7.
Nyt haluaisin myös mukaan ehdon, että makro kopioisi niiden rivien tiedot, joiden sarakkeessa 7 lukee kissa mutta myös niiden, joiden sarakkeessa 8 lukee kissa. Nyt olen saanut aikaiseksi vain makron, joka kirjoittaa toisen yli.
Tein makron, joka kopioi tietoa suodatuksen perusteella toiseen taulukkoon. Olen saanut räpellettyä nauhoittamalla seuraavan:
Selection.AutoFilter
Selection.AutoFilter Field:=7, Criteria1:="kissa"
Cells.Select
Selection.Copy
Workbooks.Open Filename:="\\palvelin\kotihakemisto\testi2.xls"
Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWorkbook.Close
Windows("testi.xls").Activate
Makro siis kopioi kaikki tiedot, joissa on kissa sarakkeessa 7.
Nyt haluaisin myös mukaan ehdon, että makro kopioisi niiden rivien tiedot, joiden sarakkeessa 7 lukee kissa mutta myös niiden, joiden sarakkeessa 8 lukee kissa. Nyt olen saanut aikaiseksi vain makron, joka kirjoittaa toisen yli.
Vastaukset 2
Vanhimmat
Olet käyttänyt tässä pikasuodatusta ( AutoFilter ), voit kyllä laittaa tuohon toisen ehdon perään, mutta silloin ne suoritetaan niin että ensin suodataetaan eka ehto ja jäljelleoleville riveille sitten toinen ehto, lopputuloksena on että kumpikin ehto pitää olla oikein, eli ehto kissa JA kissa.
Selection.AutoFilter Field:=7, Criteria1:="kissa"
Selection.AutoFilter Field:=8, Criteria1:="kissa"
Nyt jää näkyviin rivit jossa lukee kissa ja kissa, esim rivi koira ja kissa ei näy .
Erikois suodatusta pitää käyttää, jos haluat että näkyy rivit jossa kissa on jommassa kummassa sarakkeessa, siis myös rivi koira ja kissa näkyy, eli ehto on kissa TAI kissa, esim:
G1 ja H1 = 7...........8.....
G2 ja H2 = kissa............
G3 ja H3 = .............kissa
ja makroon
Selection.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("G1:H3"), Unique:=False
Kirjoitit lisäksi näin:
> Nyt olen saanut aikaiseksi vain makron, joka kirjoittaa toisen yli.
jos tarkoitit että tuo makro kirjoittaa testi2.xls tietojen yli, niinhän se sinun makro tekee, mutta miten sinä haluaisit sen tekevän ?
Aivan, yli sen pitääkin kirjoittaa. Aikaisempi makro kun vetäisi ensimmäisten kissa-ehtojen yli tehdessään suodatusta. Suurkiitokset ohjeista, nyt suodatus toimii, kuten pitääkin!