Am un fisier Excel care contine 2 sheet-uri: Template si SURSA.
Vreau sa execut urmatoarele sarcini cu cod VBA:
1)- la click pe Insert Worksheet, sa se creeze un nou sheet identic cu "Template"
2)- in sheet nou creat: dupa ce user-ul selecteaza ceva din listele aflate in celulele B2, B3 ,B4 si B5 (listele fiind legate intre ele), sa se inlocuiasca numele sheet-ului cu B4 & "_" & B5
1) functioneaza ok, dar 2) deloc.
Codul meu:
Cod: Selectaţi tot
Private Sub Workbook_NewSheet(ByVal Sh As Object)
Dim wsSource As Worksheet
Set wsSource = Worksheets("Template")
Sheets("Template").Select
Range("A1:K100").Copy
Sh.Select
Range("A1").Select
ActiveSheet.Paste
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B5")) Is Nothing Then
Select Case Range("B5")
Call MyMacroRename
End Select
End If
End Sub
Sub MyMacroRename()
Dim sheetXXX As Worksheet
Set sheetXXX = ActiveWorkbook.ActiveSheet
sheetXXX.Name = sheetXXX.Range("B4").Value & "_" & sheetXXX.Range("B5").Value
End Sub