Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1216to1220
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bezugsfehler bei Tabelle-löschen verhindern

Bezugsfehler bei Tabelle-löschen verhindern
Jockel
Hallo,
habe ein kleines Problem mit Formeln. Ich versuche es mal in einem einfachen Rahmen zu erklären:
Habe eine Mappe mit zwei Tabellenblättern. In der ersten Mappe habe ich in A1 eine Verknüpfung auf das zweite Tabellenblatt ebenfalls auf die Zelle A1. (=Tabelle2!A1)
Nun muss ich das zweite Tabellenblatt an jemand schicken und der füllt Daten nach und sendet zurück.
(Er darf nur das eine bekommen)
Ich würde nun gerne einfach das alte, kopierte, Tabellenblatt aus meiner Mappe entfernen und das zurückgesendete Tabellenblatt vom Kollege mit den neuen Daten bei mir einfügen. So, dass auch die verknüpfung wieder funktioniert.
das Problem: lasse ich in meiner Mappe das "Tabellenblatt2" drin und füge sein "Tabellenblatt2" bei mir ein, verweist meine Verknüpfung nicht auf das neue Blatt, müsste manuell angepasst werden.
Lösche ich zuerst mein "Tabellenblatt2" um das neue "Tabellenblatt2" einzufügen, hat Excel den Bezug vergessen und findet die Daten nicht mehr im neuen Sheet.
Meine Frage dazu:
Kann ich in meiner Mappe das "Tabellenblatt2" löschen, OHNE dass der Bezug von Tabellenblatt1/A1 auf das "Tabellenblatt2/A1 verloren geht und nach dem einfügen des neuen Tabellenblattes der Bezug wieder stimmt ?
Ich weiss, das ist ein blödes vorgehen, aber ist halt so entstanden und es handelt sich nicht nur um einen Bezug, sondern um viele. Wäre also ein großes Geschäft, das manuell wieder anzupassen.
Hat da jemand eine Idee ?
Danke mal
Jockel

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Bezugsfehler bei Tabelle-löschen verhindern
06.06.2011 10:39:07
oberschlumpf
Hi Jockel
Du kannst den Bezug per VBA setzen.
Sub sbBezug()
Range("A1").FormulaLocal = "=neueTabelle2!A1"
End Sub

Für
neueTabelle2
musst du natürlich den richtigen Blattnamen eintragen, bzw die neue Tabelle muss immer so heißen, wie im Code vorgegeben.
Sollte das neue Tabellenblatt immer am Ende der Blätter stehen, dann kannst du auch mit dem Index arbeiten.
dann ersetze die obige Zeile durch diese:
Range("A1").FormulaLocal = "=" & Sheets(Sheets.Count).Name & "!A1"
Das Makro kannst du dann immer nach dem Hinzufügen des neuen Blattes starten.
Und für alle anderen Bezüge kannst du genau so verfahren.
Hilfts?
Ciao
Thorsten
Anzeige
AW: Bezugsfehler bei Tabelle-löschen verhindern
06.06.2011 10:47:11
Jockel
Hi Thorsten,
OK, habe ich soweit verstanden. Das heisst, ich muss dann aber ein Makro schreiben, dass ALLE meine Bezüge kennt. Hmmm, viel Arbeit.
Das aktualisieren, dass die Mappe schon beim löschen eines Tabellenbalttes erkennt, dass der Bezug ungültig wird, kann man nicht ausschalten, Mappen tauschen und dann wieder einschalten ?
Danke
Jockel
is mir nich bekannt...owT
06.06.2011 11:52:20
oberschlumpf
Kopiere die Daten owT
06.06.2011 10:46:43
Rudi
andere Idee
06.06.2011 11:12:17
Rudi
Hallo,
verschiebe Blatt2 in eine neue Mappe. Dann lautet der Bezug z.B. =[Mappe1]Blatt2!A1
Jetzt kopierst du Blatt2 des Kollegen in deine Mappe. Anschließend Bearbeiten-Verknüpfungen-Quelle ändern und deine Mappe auswählen. Hierdurch wird der externe Bezug aufgehoben. Das importierte Blatt muss hierbei immer so heißen, wie das exportierte (Blatt2)
Gruß
Rudi
Anzeige
andere Idee per VBA
06.06.2011 11:49:35
Rudi
Hallo,
in deine Mappe:
Sub Blatt_importieren()
Dim strFile As String, strTemp As String
Const strWks As String = "Blatt2"
strTemp = ThisWorkbook.Path & "\Temp.xls"
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "Importdatei wählen"
.InitialFileName = ThisWorkbook.Path & "\*.xls"
If .Show = -1 Then
strFile = .SelectedItems(1)
End If
End With
If strFile  "" Then
Application.ScreenUpdating = False
Sheets(strWks).Move
With ActiveWorkbook
.SaveAs strTemp
.Close
End With
With Workbooks.Open(strFile)
.Sheets(strWks).Move after:=ThisWorkbook.Sheets(1)
.Close False
End With
With ThisWorkbook
.ChangeLink strTemp, .Name, 1
End With
Kill strTemp
End If
End Sub

Gruß
Rudi
Anzeige
AW: Bezugsfehler bei Tabelle-löschen verhindern
06.06.2011 11:45:05
Reinhard
Hallo Jockel,
vielleicht so:
Sub FormelnAUS()
Dim Zelle As Range
With ThisWorkbook.Worksheets("Tabelle1").UsedRange
For Each Zelle In .SpecialCells(xlCellTypeFormulas)
Zelle.FormulaLocal = "#Ä#" & Zelle.FormulaLocal
Next Zelle
End With
End Sub

Sub FormelnEIN()
Dim Zelle As Range
With ThisWorkbook.Worksheets("Tabelle1").UsedRange
.Replace What:="#Ä#", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:= _
False
End With
End Sub

Gruß
Reinhard
Vielen Dank an alle, Super Ideen :-) owT
07.06.2011 11:39:03
Jockel
Danke vielmals

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige