Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Verknüpfungen durch Absolutwerte ersetzen

Forumthread: Verknüpfungen durch Absolutwerte ersetzen

Verknüpfungen durch Absolutwerte ersetzen
18.12.2003 11:08:33
Rainer
Hallo,

ich habe mir für ein Team mit 10 Mitarbeitern eine Tabelle gebaut mit Abfrage auf eine Liste von ca. 1000 Datensätzen, um die Stempelzeiten der Mitarbeiter zu erhalten. Gibt es eine Möglichkeit, nach dem Öffnen der Tabelle, die durch die Verknüpfung eingelesenen Daten durch Absolutwerte zu ersetzen, so daß nicht bei jedem Öffnen alle Zellen abgefragt werden müssen, sondern nur die neu hinzugekommenen? Danke für eine Antwort.
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verknüpfungen durch Absolutwerte ersetzen
18.12.2003 11:39:29
Uwe Küstner
Hallo Rainer,

den Bereich markieren und kopieren.
Dann unter Bearbeiten,Inhalte einfügen Werte markieren und OK.

Oder mit einem Makro:

With Range("A1:A1000") 'nur als Beispiel
.Copy
.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
End With
Application.CutCopyMode = False
End Sub

Gruß

Uwe
Anzeige
AW: Verknüpfungen durch Absolutwerte ersetzen
18.12.2003 12:51:58
Rainer
Hallo Uwe,

danke für den Tip, aber dann habe ich wieder zwei Dateien, was mir vorschwebte, war, die Daten werden eingelesen und dann sage ich Excel, jetzt ersetze die Verknüpfung in der Zelle durch den Wert, den du vorher gezogen hast. Gut genug ausgedrückt?
AW: Verknüpfungen durch Absolutwerte ersetzen
18.12.2003 12:52:05
Rainer
Hallo Uwe,

danke für den Tip, aber dann habe ich wieder zwei Dateien, was mir vorschwebte, war, die Daten werden eingelesen und dann sage ich Excel, jetzt ersetze die Verknüpfung in der Zelle durch den Wert, den du vorher gezogen hast. Gut genug ausgedrückt?
Anzeige
AW: Verknüpfungen durch Absolutwerte ersetzen
18.12.2003 12:53:22
Michael Brueggemann
Hallo Rainer,

dieser Code (in "Diese Arbeitsmappe" abgelegt) sollte die Loesung fuer Dein "Problem" sein:

Option Explicit
Option Base 1


Private Sub Workbook_Open()
' Laeuft bei oeffnen der Arbeitsmappe automatisch ab
Dim i, intLineFrom, intLineTo As Integer
Dim intRowFrom, intRowTo, intColFrom, intColTo As Integer
Dim rngActiveSelection, rngFoundIn As Range
' Bildschirmaktualisierung abschalten
Application.ScreenUpdating = False
' gewuenschtes Worksheet aktivieren und aktive Zelle speichern
ThisWorkbook.Sheets(1).Activate
Set rngActiveSelection = ActiveCell
With ActiveSheet
' erste und letzte Zeile und Spalte des zu bearbeitenden Bereiches festlegen
' HIER DIE EIGENE FESTLEGUNG TREFFEN
intRowFrom = 1                      ' von Zeile 1
intRowTo = .UsedRange.Rows.Count    ' bis zur letzten benutzten Zeile
intColFrom = 1                      ' von Spalte 1
intColTo = .UsedRange.Columns.Count ' bis zur letzten benutzten Spalte
' zu untersuchenden Bereich festlegen
Set rngFoundIn = .Range(Cells(intRowFrom, intColFrom), Cells(intRowTo, intColTo))
' Bezug in festgelegtem Bereich finden
Set rngFoundIn = rngFoundIn.Find("[", , xlFormulas)
' wenn Bezug gefunden, dann ...
If Not rngFoundIn Is Nothing Then
' Startzeile festlegen
i = rngFoundIn.Row
' Arbeitsblatt so lange durchlaufen, bis Ende erreicht oder
' Summe der Werte der Zeile 0 ergibt (Bedingung ggf. anpassen)
Do While i <= intRowTo And _
WorksheetFunction.Sum(Range(.Cells(i, intColFrom), .Cells(i, intColTo))) <> 0
' Zeilenzaehler erhoehen
i = i + 1
Loop
' wenn etwas zu tun ist, da die erste zu bearbeitende Zeile
' nicht die Summe 0 enthaelt, dann ...
If i > rngFoundIn.Row Then
' zu ersetzenden Bereich kopieren
.Range(Cells(rngFoundIn.Row, intColFrom), Cells(i - 1, intColTo)).Copy
' Inhalte des kopierten Bereiches an der gleichen Stelle einfuegen
Range(Cells(rngFoundIn.Row, intColFrom), Cells(i - 1, intColTo)).PasteSpecial (xlPasteValues)
' Kopiermarkierung aufheben
Application.CutCopyMode = False
' vorher aktivierte Zelle reaktivieren
rngActiveSelection.Select
End If  ' If i > rngFoundIn.Row
End If  ' If Not rngFoundIn Is Nothing
End With    ' With ActiveSheet
' Bildschirmaktualisierung wieder einschalten
Application.ScreenUpdating = True
End Sub


CIAO
Michael
Anzeige
AW: Verknüpfungen durch Absolutwerte ersetzen
18.12.2003 15:21:13
Rainer
Hallo Michael,

klappt super, danke.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Verknüpfungen durch Absolutwerte ersetzen in Excel


Schritt-für-Schritt-Anleitung

Um Verknüpfungen in Excel durch Absolutwerte zu ersetzen, kannst du folgenden Ansatz verwenden:

  1. Tabelle öffnen: Öffne die Excel-Datei mit den Verknüpfungen, die du ersetzen möchtest.
  2. Bereich auswählen: Markiere den Bereich, der die Formeln enthält, die in Werte umgewandelt werden sollen.
  3. Inhalte einfügen:
    • Klicke auf Bearbeiten in der Menüleiste.
    • Wähle Inhalte einfügen.
    • Wähle Werte aus und klicke auf OK.
  4. Alternative (Makro): Wenn du diesen Vorgang automatisieren möchtest, kannst du ein Makro verwenden. Hier ist ein Beispielcode:
Sub WerteErsetzen()
    With Range("A1:A1000")   ' Beispielbereich anpassen
        .Copy
        .PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    End With
    Application.CutCopyMode = False
End Sub
  1. Makro speichern: Speichere das Makro in "Diese Arbeitsmappe", damit es beim Öffnen der Datei automatisch ausgeführt wird.

Häufige Fehler und Lösungen

  • Fehler: Verknüpfungen bleiben bestehen

    • Lösung: Stelle sicher, dass du den richtigen Bereich markiert hast und die Schritte zum Einfügen der Werte korrekt durchgeführt wurden.
  • Fehler: Das Makro funktioniert nicht

    • Lösung: Überprüfe, ob das Makro im richtigen Modul gespeichert wurde und dass die Sicherheitsoptionen in Excel Makros zulassen.

Alternative Methoden

Falls du die Excel-Formeln durch Werte ersetzen möchtest, ohne die Zwischenablage zu verwenden, kannst du auch die folgende Methode ausprobieren:

  1. Tastenkombination: Drücke Strg + C, um zu kopieren, und anschließend Strg + Alt + V, um das Fenster „Inhalte einfügen“ direkt zu öffnen.
  2. Werte ersetzen: Wähle Werte und bestätige mit Enter.

Diese Methode ist besonders nützlich, wenn du häufig mit großen Datenmengen arbeitest.


Praktische Beispiele

  • Beispiel 1: Angenommen, du hast eine Tabelle mit Stempelzeiten, die in Zelle A1 bis A1000 berechnet wird. Du möchtest diese Formeln durch die tatsächlichen Werte ersetzen, damit dein Team bei jedem Öffnen der Datei schneller auf die Daten zugreifen kann.

  • Beispiel 2: Du kannst die Funktion =SUMME(A1:A10) in Zelle B1 verwenden und anschließend die Formel durch den Wert ersetzen, um die Berechnungen zu speichern und die Datei zu beschleunigen.


Tipps für Profis

  • Automatisierung: Nutze die Workbook_Open-Ereignisprozedur, um beim Öffnen der Datei automatisch alle Formeln durch Werte zu ersetzen. Dies spart Zeit und minimiert Fehler.

  • Regelmäßige Sicherungen: Bevor du große Änderungen vornimmst, erstelle immer eine Sicherungskopie deiner Datei, um Datenverluste zu vermeiden.

  • Verwendung von Formatierungen: Stelle sicher, dass du die Formatierungen beibehältst, während du die Formeln in Werte umwandelst, um die Lesbarkeit der Daten zu gewährleisten.


FAQ: Häufige Fragen

1. Wie kann ich alle Formeln in einer Tabelle schnell durch Werte ersetzen?
Du kannst die gesamte Tabelle markieren, dann Strg + C drücken und mit Strg + Alt + V das Menü „Inhalte einfügen“ öffnen. Wähle Werte und klicke auf OK.

2. Funktioniert das auch in älteren Excel-Versionen?
Ja, die beschriebenen Methoden sind in den meisten Excel-Versionen anwendbar, insbesondere ab Excel 2007. Stelle sicher, dass du die Schritte entsprechend der Version anpasst, falls nötig.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige