1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Excel - Aktualisierung von Formel mit absoluten Bezügen.

Dieses Thema im Forum "Office:Mac" wurde erstellt von Chu, 01.09.08.

  1. Chu

    Chu Martini

    Dabei seit:
    15.06.07
    Beiträge:
    659
    Hallo,

    ich habe ein Problem mit einem Excelsheet welches ich über ein Makro in VBA geschrieben habe. In diesem Sheet sind mehrer Arbeitsblätter und auf jedem einige Werte, die ich in einem Arbeitsblatt als übersicht zusammenfasse. Das Excel ist Microsoft Office 2003 unter Windows.

    Nun zu dem Problem. In einigen Arbeitsblättern sind Bezüge auf externe Dateien die auf einem Netzlaufwerk liegen und welches jeweils unter dem selben laufwerksbuchstaben gemappt wird.
    Sobald das Makro durchgelaufen ist sollte er mir den Wert aus dem externen Sheet und dessen Arbeitsblatt mit dem Bezug anzeigen z.B. eine Zahl 400 aber es erscheint nur "#BEZUG" mit einem Grünen Pfeil.

    Code:
    ='H:\NWBACKUP\[Datei_Juno.xls]Aktivitäten_Juni'!$J$42
    1. Die Bezüge habe ich auf ihre Korrektheit überprüft :/
    2. Google spuckt haufenweise unpassende Antworten aus :/
    Das seltsame ist, sobald ich einmal in die entsprechende Zelle mit dem Verweis klicke und diese wieder verlasse wird der Bezug hergestellt und danach funktioniert der Bezug wenn ich das Makro nochmals durchlaufen lasse. Auch wenn ich die Datei schliesse und erneut öffne, doch sobald ich den PC neustarte funktioniert es nicht mehr.

    Was ich schon auf Lösungsvorschläge aus Google probiert habe:


    • Application.volatile - Keine Änderung
    • Zellbezug über Worksheets("name").Range("Bezug").calculate neu zu berechnen - Keine Änderung
    • Zellbezug über Worksheets..Select auszuwählen - Error 1004
    • ActiveWorkbook.RefreshAll - Keine Änderung
    Ich suche bereits seit Tagen aber konnte nichts finden :/
     
  2. Chu

    Chu Martini

    Dabei seit:
    15.06.07
    Beiträge:
    659
    keiner ne Idee? :(
     
  3. Chu

    Chu Martini

    Dabei seit:
    15.06.07
    Beiträge:
    659
    Also ich bin jetzt damit gelandet ;)
    Code:
     
    Sub F2toGo()
      'F2undEnter mit Sheet auswählen
      Call F2undENTER("Juni")
       ...
    End Sub
    
    Sub F2undENTER(Page As String)
    'Zelle aktivieren mit F2 und ENTER
    Dim Zelle As Range
    Dim x As Integer
    Dim i As Integer
    Dim a, l As Integer
    
    Sheets(Page).Select
    
    a = 0
    l = 1
    Do While a = 0
        If Worksheets(Page).Cells(3, l + 1).Value <> "" Then
          l = l + 1
        Else
          a = 1
        End If
    Loop
    
    l = l - 1
    
    'Anzahlzeilen des jew. Sheets
    x = Cells(Rows.Count, 1).End(xlUp).Rows.Row
    'Testausgabe
    MsgBox x & "  " & l
    
    For i = 1 To x
      If IsFormula(Page, i, l) = True Then
        Cells(i, l).Select
        SendKeys "{F2}", True
        SendKeys "{ENTER}", True
      End If
    Next i
    
    End Sub
    
    Function IsFormula(Sheet As String, Zeile As Integer, Spalte As Integer) As Boolean
    'Funktion überprüft ob eine Spalte eine Formel enthält
    'Da jede Zelle eine Funktion darstellen soll muss sie True zurückgeben
        If Worksheets(Sheet).Cells(Zeile, Spalte).HasFormula = False Then
            IsFormula = False
        Else
            IsFormula = True
        End If
    End Function
    
    
     

Diese Seite empfehlen