Condividi tramite

vba excel creare file .bat

Anonimo
2012-05-07T17:21:56+00:00

Ciao

stò cervando di creare un file .bat da exel con una variabile al suo interno che deriva da una cella.

Ho trovato questo metodo:

Dim FileNumber As Integer

Dim retVal As Variant

Dim var As Integer

var = 23

FileNumber = FreeFile

'creat batch file

Open MY_FILENAME For Output As #FileNumber

Print #FileNumber, "V:"

Print #FileNumber, "cd " & Chr(34) & "V:\prod" & Chr(34) 'use chr(34) to output double quotes as part of the string

Print #FileNumber, "DIR A3* /A-D /S /B > T:\Onaka!Path.txt" & Chr(34) & var

Print #FileNumber, "exit"

Print #FileNumber, var

Close #FileNumber

Non mi salva però la variabile val=23

Praticamente il percorso dovrebbe uscire così :

c:\myapp.exe /L 23

Potete aiutarmi ad inserire il valore Val.

Grazie mille

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2012-05-07T19:34:11+00:00

Ciao

stò cercando di creare un file .bat da exel con una variabile al suo interno che deriva da una cella.

Ho trovato questo metodo:

'Apertura file in Scrittura

Open "C:\ttt.txt" For Output As #1

Write #1, "cd c:\ 'Scrive la 1° riga del file

Write #1, "Start myapp.exe /L" & Variabile

Close #1 'Chiusura File

Solo che il file viene scritto anche con le "" di chiusura ed apertura, il che non va bene perchè poi non vengono riconosciuti come comandi cmd.

C'è un altro modo per salvare questo tipo si formati?

Questa macro ti salva il file abc.bat nella cartella C:\Prova:

Public Sub m()

    Dim objFSO As Object

    Dim objFile As Object

    Dim s As String

    s = "C:\D" & vbNewLine & _

        "Quello che vuoi" & vbNewLine & _

        "Quello che vuoi" & vbNewLine & _

        "eccetera eccetera"

    Set objFSO = CreateObject("Scripting.FileSystemObject")

    Set objFile = objFSO.CreateTextFile("C:\Prova\abc.bat", True)

    objFile.WriteLine (s)

    Set objFile = Nothing

    Set objFSO = Nothing

End Sub

Ovviamente puoi passare le tue variabili stringa a ciascuna riga senza avere i doppi apici.

La risposta è stata utile?

0 commenti Nessun commento

1 risposta aggiuntiva

Ordina per: Più utili
  1. Anonimo
    2012-05-07T17:22:08+00:00

    Ciao

    stò cercando di creare un file .bat da exel con una variabile al suo interno che deriva da una cella.

    Ho trovato questo metodo:

    'Apertura file in Scrittura

    Open "C:\ttt.txt" For Output As #1

    Write #1, "cd c:\ 'Scrive la 1° riga del file

    Write #1, "Start myapp.exe /L" & Variabile

    Close #1 'Chiusura File

    Solo che il file viene scritto anche con le "" di chiusura ed apertura, il che non va bene perchè poi non vengono riconosciuti come comandi cmd.

    C'è un altro modo per salvare questo tipo si formati?

    La risposta è stata utile?

    0 commenti Nessun commento