Excel ja makro?

Alla oleva makro on nauhoitettu avaamaan csv- muodossa talletettu testi.csv tiedosto, ja piirtämään testi.csv tiedoston tietojen perusteella "käppyrä" Testitulos.xls nimiseen Excel:n tiedostoon. Miten makroa muutetaan, että se kysyy mistä csv-tiedostosta haetaan tiedot "käppyrän" piirtämiseksi, jos omat tiedostot kansiossa olisi lisäksi vaikka testi1.csv, testi2.csv jne. ???

Workbooks.Open Filename:= _
"C:\Documents and Settings\Omat tiedostot\testi.csv"
Range("A1:B10").Select
Selection.Copy
ActiveSheet.ChartObjects("Kaavio 4").Activate
Windows("Testitulos.xls").Activate
Windows("Testitulos.xls").ActivateRange("A1").Select
ActiveSheet.Paste
End Sub
1336
Äänestä

Muut lukivat myös

Vastaukset 1

Vanhimmat

olisi muuttaa makroa sen verran että se hakee tietyssä solussa olevan tiedostonimen.

Esimerkissä tiedoston nimi on solussa C1:
----------------------------
Dim Tiedostonimi as String

Tiedostonimi = Range("C1")

MsgBox "Haettava tiedosto: " & Tiedostonimi

Workbooks.Open Filename:= _
"C:\Documents and Settings\Omat tiedostot\" & Tiedostonimi & ".csv"
Range("A1:B10").Select
Selection.Copy
ActiveSheet.ChartObjects("Kaavio 4").Activate
Windows("Testitulos.xls").Activate
Windows("Testitulos.xls").ActivateRange("A1").Select
ActiveSheet.Paste
End Sub
----------------------------

Jos haluaa tehdä listan kansiossa olevista tiedostoista, se onnistuu mm. seuraavalla makrolla:
----------------------------
Sub Tiedostolista()

T = Dir("C:Documents and Settings\Omat tiedostot\*.csv")

If Len(T) = 0 Then

MsgBox "Tiedostoja ei löytynyt."

Exit Sub

End If

Do While Len(T) > 0

ActiveCell.Formula = T
ActiveCell.Offset(1, 0).Select
T = Dir()

Loop

End Sub
----------------------------

Äänestä

Kommentoi aloitusta


J€SS kirjoitti:

Alla oleva makro on nauhoitettu avaamaan csv- muodossa talletettu testi.csv tiedosto, ja piirtämään testi.csv tiedoston tietojen perusteella "käppyrä" Testitulos.xls nimiseen Excel:n tiedostoon. Miten makroa muutetaan, että se kysyy mistä csv-tiedostosta haetaan tiedot "käppyrän" piirtämiseksi, jos omat tiedostot kansiossa olisi lisäksi vaikka testi1.csv, testi2.csv jne. ???

Workbooks.Open Filename:= _
"C:\Documents and Settings\Omat tiedostot\testi.csv"
Range("A1:B10").Select
Selection.Copy
ActiveSheet.ChartObjects("Kaavio 4").Activate
Windows("Testitulos.xls").Activate
Windows("Testitulos.xls").ActivateRange("A1").Select
ActiveSheet.Paste
End Sub

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu