Condividi:        

[Excel] Macro per info sistema

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[Excel] Macro per info sistema

Postdi Roberto183 » 24/07/06 13:22

Inanzitutto un saluto a tutti :)

Premetto che non sò nulla di excel, mi è stato chiesto di creare una macro per recuperare il nome del pc da dove il foglio excel viene aperto, qualcuno di voi può aiutarmi nell'impresa?

Grazie a tutti anticipatamente :)
Roberto183
Utente Junior
 
Post: 13
Iscritto il: 24/07/06 13:13

Sponsor
 

Re: Macro Excel

Postdi cassioli » 24/07/06 15:09

Codice: Seleziona tutto
 Private Declare Function api_GetUserName Lib "advapi32.dll" Alias _
          "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
    Private Declare Function api_GetComputerName Lib "Kernel32" Alias _
          "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long

    Public Function CNames(UserOrComputer As Byte) As String
    'UserorComputer; 1=User, anything else = computer
    Dim NBuffer As String
    Dim Buffsize As Long
    Dim wOK As Long
       
    Buffsize = 256
    NBuffer = Space$(Buffsize)
       
    If UserOrComputer = 1 Then
        wOK = api_GetUserName(NBuffer, Buffsize)
         CNames = Trim$(NBuffer)
    Else
        wOK = api_GetComputerName(NBuffer, Buffsize)
        CNames = Trim$(NBuffer)
    End If
   
End Function
Codice: Seleziona tutto
Sub StampaDati()
stringa = "Computer " & CNames(2)
 MsgBox (stringa)
stringa = " in uso da parte di " & CNames(1)
 MsgBox (stringa)
End Sub
cassioli
Utente Senior
 
Post: 1014
Iscritto il: 05/03/04 11:02

Postdi Roberto183 » 24/07/06 15:18

Grazie :)

Credo che visiterò spesso questo forum :)
Roberto183
Utente Junior
 
Post: 13
Iscritto il: 24/07/06 13:13

Postdi cassioli » 24/07/06 15:28

Grazie. Sono imbattibile con Google e col copia-incolla ;)

Aggiungo un po' "del mio" per semplificare la macro:

Codice: Seleziona tutto
Private Declare Function api_GetUserName Lib "advapi32.dll" Alias _
          "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
    Private Declare Function api_GetComputerName Lib "Kernel32" Alias _
          "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Sub StampaDati()
    Dim NBuffer As String
    Dim Buffsize As Long
    Dim wOK As Long
       
    Buffsize = 256
    NBuffer = Space$(Buffsize)
   
    wOK = api_GetUserName(NBuffer, Buffsize)
    Utente = Trim$(NBuffer)
    wOK = api_GetComputerName(NBuffer, Buffsize)
    computer = Trim$(NBuffer)
    computer = Left$(computer, Len(computer) - 3) ' Elimina ultimi caratteri (danno fastidio a msgbox)
    MsgBox ("Computer '" & computer & "' in uso da parte di '" & Utente & "'")
End Sub
cassioli
Utente Senior
 
Post: 1014
Iscritto il: 05/03/04 11:02

Postdi Roberto183 » 25/07/06 08:10

Anch'io ho provato a cercare con google, ma non è così semplice :)
Roberto183
Utente Junior
 
Post: 13
Iscritto il: 24/07/06 13:13

Postdi cassioli » 25/07/06 08:30

Roberto183 ha scritto:Anch'io ho provato a cercare con google, ma non è così semplice :)

iO ho scoperto un trucchetto per cercare info sulle macro per Access, Excel e Word in Google: aggiungi "VBA" (Visual Basic for Applications) alle ricerche!

"vba excel username" ;)
cassioli
Utente Senior
 
Post: 1014
Iscritto il: 05/03/04 11:02

Postdi Roberto183 » 25/07/06 09:37

Grazie, ci riprovo, non riesco proprio a trovare quello che sto cercando, cioè quello che trovo non mi funziona come dovrebbe :cry:
Roberto183
Utente Junior
 
Post: 13
Iscritto il: 24/07/06 13:13

Postdi cassioli » 25/07/06 10:01

Roberto183 ha scritto:Grazie, ci riprovo, non riesco proprio a trovare quello che sto cercando, cioè quello che trovo non mi funziona come dovrebbe :cry:

siamo tutt'orecchi 8)
cassioli
Utente Senior
 
Post: 1014
Iscritto il: 05/03/04 11:02


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Macro per info sistema":


Chi c’è in linea

Visitano il forum: Marius44 e 61 ospiti