Risultati da 1 a 11 di 11

Discussione: Macro per lanciare .bat con nome variabile inserito in una cella



  1. #1
    L'avatar di Gambry
    Clicca e Apri
    Data Registrazione
    Jun 2016
    Località
    ITALIA
    Messaggi
    14
    Versione Office
    2010
    Likes ricevuti
    2
    Likes dati
    0

    Macro per lanciare .bat con nome variabile inserito in una cella

    Salve a tutti,

    avrei la necessità di creare una macro che lanci un file .bat il cui nome è composto ed è inserito in una cella.

    Una cosa del genere.....


    Dipendente Cod bat Lancio
    paolo 1 master.bat paolo 1 Macro
    franco 2 master.bat franco 2 Macro
    gino 3 master.bat gino 3 Macro

    La macro dovrebbe essere una e lanciare il nome del .bat della casella nella colonna prima
    (anche il bat è unico, cambiano i due parametri di volta in volta)


    Vi ringrazio in anticipo, se riuscite ad aiutarmi sarabbe una gioia.
    Gambry

  2. #2
    L'avatar di patel
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Livorno
    Età
    72
    Messaggi
    1115
    Versione Office
    2010
    Likes ricevuti
    143
    Likes dati
    1

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    è una domanda abbastanza insolita, occorre fare prove, allega file excel e bat

  3. #3
    L'avatar di Gambry
    Clicca e Apri
    Data Registrazione
    Jun 2016
    Località
    ITALIA
    Messaggi
    14
    Versione Office
    2010
    Likes ricevuti
    2
    Likes dati
    0

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    Non posso inserire i file "reali" perchè trattano dati sensibili, ma in pratica il file excel si puo' riassumere nella tabella che vedi (chiaramente le righe sono di più) il .bat lancia un comando che varia con i parametri 1 e 2 (dipendente/cod).

    la colonna "bat" rappresenta il comando da lanciare fomato dal nome del .bat (master.bat) + i 2 parametri (se non ci fossero i parametri dip/cod potrei risolvere con un collegamento ipertestuale che chiaramente non funziona in questo caso) la colonna lancio potrebbe essere qualsia cosa, un pulsante, un'immagine etc con associata la macro.

    in pratica io adesso apro il prompt dei comandi e digito "master.bat franco 2".

    il .bat potrei semplificarlo in qualcosa del genere che sarebbe la stessa cosa per la soluzione del problema:

    Codice: 
    cls
    rem "..............."
    echo off
    set dipendente= %1
    set codice= %2
    cls
    @echo Dipendente selezionato %dipendente%
    @echo Codice %codice%
    grazie.

  4. #4
    L'avatar di patel
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Livorno
    Età
    72
    Messaggi
    1115
    Versione Office
    2010
    Likes ricevuti
    143
    Likes dati
    1

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    puoi sempre inserire un file di esempio con pochi nomi fittizi, non vedo perché lo dovrei fare io per testare la macro

  5. #5
    L'avatar di Gambry
    Clicca e Apri
    Data Registrazione
    Jun 2016
    Località
    ITALIA
    Messaggi
    14
    Versione Office
    2010
    Likes ricevuti
    2
    Likes dati
    0

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    Si scusa,

    ho inserito sia un piccolo esempio che il master .bat di test.

    Chiaramente la macro nel file excel non c'è perchè non so farla, in pratica al cliccare della freccetta dovrebbe lanciare il comando (credo uno Shell (.....) ma non so farlo) nella colonna immediatamente prima e nella stessa riga.

    grazie.

    ----------Post unito in automatico----------

    RISOLTO!!

    nel mio caso ho risolto passando tutto su access

    Rigrazio tantissimo chi si è interessato.
    File Allegati File Allegati

  6. #6
    L'avatar di patel
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Livorno
    Età
    72
    Messaggi
    1115
    Versione Office
    2010
    Likes ricevuti
    143
    Likes dati
    1

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    quali strumenti ti mette a disposizione Acces in più di Excel ? perché con access ci riesci e con excel no ?

  7. #7
    L'avatar di Gambry
    Clicca e Apri
    Data Registrazione
    Jun 2016
    Località
    ITALIA
    Messaggi
    14
    Versione Office
    2010
    Likes ricevuti
    2
    Likes dati
    0

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    perchè su access metto un pulsante ad ogni riga con asseganto il comando "shell(cmd.exe master.bat miei parametri)" e lui capisce da solo che "miei parametri" sono quelli della riga dalla quale sto cliccando, su excel non sono capace di fare lo stesso e poi la sintassi del comando non riuscivo a scriverla correttamente.

  8. #8
    L'avatar di Powerwin
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Milano
    Messaggi
    1404
    Versione Office
    2016 - 2010
    Likes ricevuti
    194
    Likes dati
    71

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    Ciao a tutti, se vuoi provare anche su Excel posto il tuo file con il codice seguente:

    Codice: 
    Sub Batchata()
    Dim filebatch As String
    Dim ur As Integer
    Dim rng As Range
    Dim parametro As String
    filebatch = "tuaPath\Master.bat"
    ur = Range(Cells(1, 1), Cells(1, 1).End(xlDown)).Rows.Count
    With Worksheets("Foglio1")
        For i = 2 To ur
            parametro = .Range("A" & i) & " " & .Range("B" & i)
            Shell filebatch, parametro
            'MsgBox parametro
        Next i
    End With
    End Sub
    ovviamente devi adattarla alle tue esigenze
    File Allegati File Allegati

  9. #9
    L'avatar di Gambry
    Clicca e Apri
    Data Registrazione
    Jun 2016
    Località
    ITALIA
    Messaggi
    14
    Versione Office
    2010
    Likes ricevuti
    2
    Likes dati
    0

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    Grazie mille per l'interessamento ma con access mi sono veramente semplificato la cosa per quelle che erano le mie esigenze, in pratica tutto quello che hai scritto nella macro su access l'ho risolto con una semplice riga

    Codice: 
    Private Sub Comando13_Click()
    
    Shell ("cmd.exe /c" & [Comando])
    
    End Sub
    dove il campo "[comando]" racchiude il nome del bat e tutti i parametri necessari

    grazie ancora per l'interesse.

  10. #10
    L'avatar di Powerwin
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Milano
    Messaggi
    1404
    Versione Office
    2016 - 2010
    Likes ricevuti
    194
    Likes dati
    71

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    Grazie a te per il feedback anche se non ho capito come cicli sui nomi con quel codice

  11. #11
    L'avatar di Gambry
    Clicca e Apri
    Data Registrazione
    Jun 2016
    Località
    ITALIA
    Messaggi
    14
    Versione Office
    2010
    Likes ricevuti
    2
    Likes dati
    0

    Re: Macro per lanciare .bat con nome variabile inserito in una cella

    In realtà a me non serviva "ciclare"...

    vi allego un esempio del file che ho fatto in access per spiegare meglio cio' che mi serviva....
    nella maschera ho aggiunto anche altri pulsanti (visto che c'ero :) ) ma a me bastava anche solo "M1"
    File Allegati File Allegati

Discussioni Simili

  1. Macro che salva foglio in pdf prendendo il nome da una cella
    Di Fagor nel forum Domande su Excel VBA e MACRO
    Risposte: 13
    Ultimo Messaggio: 15/02/17, 08:40
  2. [Risolto] Lanciare macro se in cartella sono presenti files .txt
    Di Gatt88 nel forum Domande su Excel VBA e MACRO
    Risposte: 11
    Ultimo Messaggio: 14/12/16, 18:04
  3. [Risolto] Nome Foglio come variabile in una cella
    Di Edoardo91 nel forum Domande su Excel in generale
    Risposte: 2
    Ultimo Messaggio: 04/10/16, 23:00
  4. Macro per aprire un file con nome sempre variabile
    Di kellington90 nel forum Domande su Excel VBA e MACRO
    Risposte: 5
    Ultimo Messaggio: 21/05/16, 13:30
  5. Risposte: 16
    Ultimo Messaggio: 18/05/16, 18:55

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •