etsi kansio / tuhoa kansio

matroxi

tervehdys, mitenkäs saan kerrottua parametrejä excelin koodista käsin dos komennoille?

elikkä rmdir toimii hyvin ilman /s parametriä kunhan kansio on tyhjä mutta miten saan tuon /s parametrin tai vastaavan mukaan jotta voisin poistaa kansioita joissa on sälää

Sub toinen()
usrinput = InputBox("anna etsimäsi kansion numero", "kansio haku")
path = "c:\" & usrinput
RmDir /s path
End Sub


Tai vaihtoehtoisesti jos kutsun .bat tiedostoa tuosta koodista, niin miten saisin kiikutettua .bat tiedostoon tuon path tiedon?

Kiitoksia

6

528

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Kunde Rules

      Aina silta saa vastauksen, jos asiallisesti kyselet

      • minä itse =)

        juu kundea lähinnä ajattelin kun tälle palstalle ongelmani kirjoitin.

        Tuntuu mies(puhdas arvaus) meinaan käyttäneen exceliä muutaman kerran =)

        vai onko olemassa joku kysy kundelta sivusto?

        Mutta nyt en apua enään kaipaa vaan kerrankin keksin itse vastauksen =)

        Eli alkuperäisessä pätkässä kansio ei poistunut koska siellä oli sälää, mutta pieni kiertotie ratkaisi asian eli tyhjinsin kansion kill lausekkeella vanha koodi:

        Sub toinen()
        usrinput = InputBox("anna etsimäsi kansion numero", "kansio haku")
        path = "c:\" & usrinput
        RmDir path
        End Sub

        Muutettu toimiva koodi:

        usrinput = InputBox("anna etsimäsi kansion numero", "kansio haku")
        path = "c:\" & usrinput
        fullpath = path & "\*.*"
        Kill fullpath
        RmDir path
        End Sub


      • jos ei alihakemistoja
        minä itse =) kirjoitti:

        juu kundea lähinnä ajattelin kun tälle palstalle ongelmani kirjoitin.

        Tuntuu mies(puhdas arvaus) meinaan käyttäneen exceliä muutaman kerran =)

        vai onko olemassa joku kysy kundelta sivusto?

        Mutta nyt en apua enään kaipaa vaan kerrankin keksin itse vastauksen =)

        Eli alkuperäisessä pätkässä kansio ei poistunut koska siellä oli sälää, mutta pieni kiertotie ratkaisi asian eli tyhjinsin kansion kill lausekkeella vanha koodi:

        Sub toinen()
        usrinput = InputBox("anna etsimäsi kansion numero", "kansio haku")
        path = "c:\" & usrinput
        RmDir path
        End Sub

        Muutettu toimiva koodi:

        usrinput = InputBox("anna etsimäsi kansion numero", "kansio haku")
        path = "c:\" & usrinput
        fullpath = path & "\*.*"
        Kill fullpath
        RmDir path
        End Sub

        mutta miks ei:

        usrinput = InputBox("anna etsimäsi kansion numero", "kansio haku")
        path = "/s c:\" & usrinput
        RmDir path
        End Sub


      • alkup.
        jos ei alihakemistoja kirjoitti:

        mutta miks ei:

        usrinput = InputBox("anna etsimäsi kansion numero", "kansio haku")
        path = "/s c:\" & usrinput
        RmDir path
        End Sub

        Joo toihan olis aivan mahtava jos vaan toimisi, mutta esimerkissäsi se /s luetaan osaksi polkua ja tämän seurauksena se ei siis toimi

        eli path = /s c:\syöte
        antaa vaan ilmotuksen että path not found


    • toi tyhjentaa kansion vaikka siella olisi tiedostojakin. Kandee olla varovainen, ettei poista jotakin tarkeatakin.

      Sub PoistaKansio()
      Dim fso
      Dim kansio As String
      kansio = "c:\Testi"
      Set fso = CreateObject("Scripting.FileSystemObject")
      If fso.FolderExists(kansio) Then
      fso.DeleteFolder kansio
      Else
      MsgBox kansio & " ei ole olemassa!" _
      , vbExclamation, "Kansiota ei loytynyt"
      End If
      End Sub

      • alkup.

        Eli ongelma ratkaistu, mutta mietiskelin jo aiemmin että onkohan keinoa saada siirrettyä käyttäjän syötettä esim. .bat suoritukseen tai .vbs:ään

        syöte = inputbox(" kirjota jotain")
        call c:\suoritus.bat
        'ja batissa suorittaisi esim tuon poiston eli
        rmdir /s "c:\" & syöte

        ei varmaankaan pysty sillä ovathan ihan eri ympäristöjä, mutta tulipahan vaan mieleen...

        Kiitos kuitenkin edellisestä


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

    Luetuimmat keskustelut

    1. Orpo hiiri kadoksissa, Marin jo kommentoi

      Kuinka on valtiojohto hukassa, kun vihollinen Grönlantia valloittaa? Putinisti Purra myös hiljaa kuin kusi sukassa.
      Maailman menoa
      117
      6319
    2. Lopeta jo pelleily, tiedän kyllä mitä yrität mies

      Et tule siinä onnistumaan. Tiedät kyllä, että tämä on just sulle. Sä et tule multa samaan minkäänlaista responssia, kosk
      Ikävä
      379
      6125
    3. Nuori lapualainen nainen tapettu Tampereella?

      Työ­matkalainen havahtui erikoiseen näkyyn hotellin käytävällä Tampereella – tämä kaikki epäillystä hotelli­surmasta tie
      Lapua
      69
      5850
    4. Tampereen "empatiatalu" - "Harvoin näkee mitään näin kajahtanutta"

      sanoo kokoomuslainen. Tampereen kaupunginvaltuuston maanantain kokouksessa käsiteltävä Tampereen uusi hyvinvointisuunni
      Maailman menoa
      344
      3952
    5. Lidl teki sen mistä puhuin jo vuosikymmen sitten

      Eli asiakkaat saavat nyt "skannata" ostoksensa keräilyvaiheessa omalla älypuhelimellaan, jolloin ei tarvitse mitään eril
      Maailman menoa
      145
      2355
    6. Ukraina, unohtui korona - Grönlanti, unohtu Ukraina

      Vinot silmät, unohtui Suomen valtiontalouden turmeleminen.
      Maailman menoa
      4
      2335
    7. Orpo pihalla kuin lumiukko

      Onneksi pääministerimme ei ole ulkopolitiikassa päättäjiemme kärki. Hänellä on täysin lapsellisia luuloja Trumpin ja USA
      Kansallinen Kokoomus
      117
      1393
    8. Onko täällä helmessä tapahtunut vakava rikos?

      Onko kuullut kukaan mitään.
      Haapavesi
      12
      1221
    9. Miten kauan sulla menisi

      Jos tulisit mun luo tänne nyt kahvinkeittoon?
      Ikävä
      182
      1052
    10. Miksi me oikein

      Rakastuttiin?
      Ikävä
      59
      877
    Aihe