You are here:--trovare le unità cd rom e dvd rom con codice vba
trovare le unità cd rom e dvd rom con codice vba2019-09-09T10:37:39+01:00

Home Forum Domande su Excel VBA e MACRO trovare le unità cd rom e dvd rom con codice vba

  • Autore
    Articoli
  • AvatarMisterExcel
    Partecipante
      Post totali: 12

      Buongiorno.

      Chiedo un aiuto ai più esperti.

      Ho questo codice che mi scrive nella cella A20 del foglio Excel la lettera corrispondente all’unità cd rom (DriveType = 4) presente sul computer:

      Sub Trova_unità()

      Sheets(“Foglio1”).Range(“a20”) = “”

      Sheets(“Foglio1”).Range(“a21”) = “”

      Dim fs, d, dc, n

      Set fs = CreateObject(“Scripting.FileSystemObject”)

      Set dc = fs.Drives

      For Each d In dc

      If d.DriveType = 4 Then

      Sheets(“Foglio1”).Range(“a20”) = d.DriveLetter

      End If

      Next

      End Sub

      Potrebbe succedere che ci siano due unità (DriveType = 4) sul computer. In questo caso vorrei ampliare il codice in modo che le lettere delle due unità vengano scritte rispettivamente nelle celle A20 e A21 del foglio excel.

      Grazie in anticipo

       

    • AvatarMisterExcel
      Partecipante
        Post totali: 12

        Buongiorno. Chiedo un aiuto ai più esperti. Ho questo codice che mi scrive nella cella A20 del foglio Excel la lettera corrispondente all’unità cd rom (DriveType = 4) presente sul computer:

        Sub Trova_unità()
        Sheets(“Foglio1”).Range(“a20”) = “”
        Sheets(“Foglio1”).Range(“a21”) = “”
        Dim fs, d, dc, n
        Set fs = CreateObject(“Scripting.FileSystemObject”)
        Set dc = fs.Drives
        For Each d In dc
        If d.DriveType = 4 Then
        Sheets(“Foglio1”).Range(“a20”) = d.DriveLetter
        End If
        Next
        End Sub

        Potrebbe succedere che ci siano due unità (DriveType = 4) sul computer. In questo caso vorrei ampliare il codice in modo che le lettere delle due unità vengano scritte rispettivamente nelle celle A20 e A21 del foglio excel. Grazie in anticipo

        • Questa risposta è stata modificata 2 mesi, 1 settimana fa da BySalv BySalv. Ragione: modificato codice
      • BySalvBySalv
        Amministratore del forum
          Post totali: 541

          Ciao Una soluzione potrebbe essere, Copio il tuo codice, modifico “Range” con “Cells”

          Sub Trova_unità()
          Sheets(“Foglio1”).Cells(20,1) = “”
          Sheets(“Foglio1”).Cells(21,1) = “”
          Dim fs, d, dc, n
          Set fs = CreateObject(“Scripting.FileSystemObject”)
          Set dc = fs.Drives
          n = 20
          For Each d In dc
          If d.DriveType = 4 Then
          Sheets(“Foglio1”).cells(n, 1) = d.DriveLetter
          n = n + 1
          End If
          Next
          End Sub

          come vedi ho inizializzato “n” con il numero di riga 20 quindi se trova più DriveType = 4, li scrive alla riga successiva

          Ciao By Sal (8-D

        • AvatarMisterExcel
          Partecipante
            Post totali: 12

            Grazie di tutto.

            Alla prossima

          Devi essere loggato per rispondere a questa discussione.

          Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

          Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

          Chiudi