Complément d'un code VBA pour création d'onglet

Bonjour tous le monde,

Je sais mon titre n'est pas vraiment parlant mais je ne savais pas vraiment comment l'appeler ^^

Je reviens vers vous car j'aimerai faire un petit update d'un code VBA créer par Rag02700...

Voici le code :

Private Sub CommandButton1_Click()
ActiveSheet.Unprotect "labo"
    Dim lngLastR As Long
    Dim strName As String

    lngLastR = Cells(Rows.Count, "h").End(xlUp).Row
    strName = Range("h6").Value
    Range("g8:i" & lngLastR).Copy
    Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = strName
    Worksheets(strName).Range("d5").PasteSpecial
    Application.CutCopyMode = False
    Worksheets("Interprétation").Range("a1:b2").Copy
    Worksheets(strName).Range("a1").PasteSpecial Paste:=xlPasteFormats
    Worksheets(strName).Range("a1").PasteSpecial Paste:=xlPasteValues
    Worksheets(strName).Columns("A:B").ColumnWidth = 17.71
    Worksheets(strName).Columns("E:E").ColumnWidth = 46.14
    Worksheets("Résultats").Range("h6").Value = Empty
    Worksheets("Résultats").Range("h9:j" & lngLastR).Value = Empty
    ActiveSheet.Protect "labo"
Worksheets("Résultats").Activate
ActiveSheet.Protect "labo"
ActiveWorkbook.Save
Application.Quit

End Sub

Maintenant le petit update que j'aimerai ajouter c'est que si on oublie de mettre le nom sa ne me fasse pas d'erreur 1004 mais que sa me prendre l'identification de la session du PC ou si c'est pas possible la date et l'heure ou on clic sur le bouton.

J'espère que j'ai été clair et si besoin Voici le fichier :

10max-int-cont.xlsm (31.75 Ko)

Merci d'avance pour tous

Bonjour Maxuel49

Une petite recherche vous aurait permis je pense de trouve ceci

    strName = Range("h6").Value
    ' Si oublie de renseigner le nom
    If strName = "" Then strName = Environ("username")

A+

Merci BrunoM45

J'ai pourtant effectuer "une petite recherche" comme vous le dites mais je ne savais pas comment nommer ma recherche et je ne trouvais pas réellement comment faire...

C'est chose faite grâce à vous merci beaucoup

Une proposition : vous pouvez faire commencer votre code comme suit :

Private Sub CommandButton1_Click()
    ActiveSheet.Unprotect "labo"
    Dim lngLastR As Long
    Dim strName As String
    Dim objWsh As Object

    Set objWsh = CreateObject("WScript.Network")
    If Range("H6") = "" Then Range("H6") = objWsh.ComputerName

Désolé, après la bataille...le temps de le faire.

Rechercher des sujets similaires à "complement code vba creation onglet"