Avatar billede rosco Novice
05. juni 2005 - 12:57 Der er 1 løsning

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
Avatar billede rosco Novice
05. juni 2005 - 14:44 #1
Jeg fandt selv løsningen:

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 + 2) = Sheets(ws.Name).Range("Q2")
    Worksheets("Menu").Cells(R, K + 1) = Sheets(ws.Name).Range("AB8")
   
    R = R + 1
    If R = LR + 1 Then
    R = 2
    K = 4
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester