Makro: Tilføj yderligere et felt til menuen
Kabbak har lavet denne udemærket kode. Men nu har jeg brug for at tilføje cellen AB8 fra arkene, til menuen.Hvordan tilføjes det til koden.
" jeg prøvede selv, med dette,Worksheets("Menu").Cells(R, K + 1) = Sheets(ws.Name).Range("AB8"), men det oprettede kun feltet i kolonne E.
Public Sub Menu()
Dim R As Integer, K As Integer, A As Integer, LR As Integer
A = MsgBox("Vil du indsætte et ark ved navn MENU, eller opdatere eksisterende, hvor der er Hyperlink til dine ark", vbYesNo, "MENU OPRETTER v.Holger Bak ©")
If A = 6 Then
R = 2 ' styrer række inden for hyperlink
K = 1 ' styrer kolonner inden for hyperlink
For Each ws In Worksheets
If ws.Name = "Menu" Then GoTo Findes
Next ws
Set NewSheet = Worksheets.Add ' opretter nyt ark
NewSheet.Name = "Menu" ' navngiver det nye ark
Findes:
LR = Int((Worksheets.Count) / 2) + 1
Worksheets("Menu").Activate
Range("a1").Select
If ActiveCell.Value = "" Then
ActiveCell.Value = "MENU Styring v.Holger Bak ©"
ActiveCell.Font.Color = vbBlue
ActiveCell.Font.Bold = True
ActiveCell.Font.Italic = True
Range("A1:E1").Select
With Selection
.HorizontalAlignment = xlCenter
End With
Selection.Merge
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = 3
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = 3
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = 3
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = 3
End With
End If
Range("a2:D" & LR).Select ' sletter alle data i området til hyperlink
Selection.ClearContents ' der kan jo være fjernet sider ???
Range("a2").Select
'-----------------------------------------Der laves hyperlink til alle ark -------------
For Each ws In Worksheets
Cells(R, K).Select
If ws.Name = "Menu" Then GoTo Næste ' Hopper over hovedarket "Menu"
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:="'" & ws.Name & "'" & "!A1"
Worksheets("Menu").Cells(R, K).FormulaR1C1 = ws.Name ' skriver hyperlink på alle sider inden for området
Worksheets("Menu").Cells(R, K + 1) = Sheets(ws.Name).Range("Q2")
R = R + 1
If R = LR + 1 Then
R = 2
K = 3
End If
Næste:
Next ws
Else
Exit Sub
End If
End Sub
