Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
628to632
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
628to632
628to632
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Formel von definierten Bereichen in VBA ändern

Formel von definierten Bereichen in VBA ändern
29.06.2005 16:52:48
definierten
Hi,
Hoffe mir kann jemand weiterhelfen. Ich habe eine VBA Prozedur, welche ein neues Workbook erstellt, und dann Tabellenblaetter aus einem "Masterworkbook" in das neue Workbook kopiert. Dabei werden die von mir in dem Masterworkbook definierten Bereiche mitkopiert. Allerdings, sind diese Bereiche mit Formeln versehen (sie sind die Basis fuer dynamische Diagramme). Beim kopieren der Worksheets in die neue Workbook werden die Formeln so geändert, dass sie auf das Masterworkbook verweisen. So steht zum Beispiel statt
=BEREICH.VERSCHIEBEN('Data'!A1,...)
=BEREICH.VERSCHIEBEN('[Masterworkbook.xls]Data'!A1,...)
Nun moechte ich dass, die Formel so wie sie ursprünglich war erhalten bleibt, da ich ja das Tabellenblatt "Data" in das neue Workbook kopiert habe.
Ich koennte in VBA jeden einzelnen Bereich durch bereichspezifischen Code ändern, z.B.:
ActiveWorkbook.Names.Add Name:="Name1", RefersToR1C1:= _
"=OFFSET(Data!R1C3,Data!R1C1,0,6)"
Allerdings habe ich viele Bereiche und dies wäre daher ein ziemlicher Aufwand.
Gibt es dafür eine elegante Lösung?
Vielen Dank

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel von definierten Bereichen in VBA ändern
30.06.2005 10:57:20
definierten
Hallo Dan,
am einfachsten wäre es wohl, das Master-WB unter einem anderen Namen zu speichern und ggf. überflüssige Tabellen zu löschen. Du könntest auch mit
ActiveWorkbook.ChangeLink Name:="Mappe1.xls", NewName:="Mappe2.xls", Type:=xlExcelLinks
die Verknüpfung auf Deine neue Mappe setzen (Mappe1.xls und Mappe2.xls sind natürlich Beispiele)
Viele Grüße
Coach
AW: Formel von definierten Bereichen in VBA ändern
30.06.2005 16:18:02
definierten
Danke Coach,
Mittlerweile habe ich es geschafft das Problem auch auf eine andere Art zu loesen. Folgender Code generiert automatisch die Bereiche und ich werde dadurch STUNDEN an Zeit sparen. Ich habe fast geweint wie ich draufgekommen bin ;)
For Each r In Worksheets("Data").Range("A20:BZ20")
If IsEmpty(r) Then
Exit For
Else:
f = "=OFFSET(Data!R20C" & r.Column & ",Data!R13C8,0,6)"
Activeworkbook.Names.Add Name:=r.Text, RefersToR1C1:=f
End If
Next r
Eigentlich sehr einfach. f ist einfach die Formel und in Zellen A20 bis BZ20 stehen die Namen und darunter die Werte.
Hoffentlich wird sich dieser Code auch fuer andere Benutzer als nuetzlich erweisen :)
Gruesse,
Dan
Anzeige

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige