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
      107
      6211
    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ä
      366
      5874
    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
      61
      5126
    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
      328
      3834
    5. Ukraina, unohtui korona - Grönlanti, unohtu Ukraina

      Vinot silmät, unohtui Suomen valtiontalouden turmeleminen.
      Maailman menoa
      4
      2305
    6. 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
      142
      2258
    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
      110
      1332
    8. Onko täällä helmessä tapahtunut vakava rikos?

      Onko kuullut kukaan mitään.
      Haapavesi
      11
      1105
    9. Miten kauan sulla menisi

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

      Rakastuttiin?
      Ikävä
      56
      803
    Aihe