Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1176to1180
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

Frage zu Zellbezügen, Verlinkungen

Frage zu Zellbezügen, Verlinkungen
Klaus
Servus zuerst mal,
habe schon seit längerem in euerem Forum mitgelesen, und bin somit nicht mehr ein blutiger Anfänger mit VBA.
Nun zu meiner Frage:
Ich möchte gerne mit VBA verschiedene Zellen untereinander "verlinken" (Bezüge herstellen). Ich beschreibe sicherheitshalber die vorgehensweise wie man sie ohne VBA in Excel durchführt, um sicherzustellen, dass ich auch verstanden werde.
1. Doppelklick auf Zelle, z.B. "A4"
2. reinschreiben "="
3. klicken auf z.B. "A1"
Ergebnis: Die Zelle "A1" hat den Wert, der bei "A4" eingetragen ist.
Sowas würde ich gerne mit VBA programmieren.
Zusätzliche Bedingungen:
1. Ansprechen der Zeile und Spalte über Laufvariablen cells(i,j)
2. Die Verlinkung erfolgt auf andere Tabellenblätter sheets(xy)...
3. Wenn möglich ohne relatives Ansprechen, also kein FormulaR1C1 (oder wie das so heißt)
Meine ersten Recherchen haben ergeben, dass man das irgendwie mit cells(x,y).formula= "=blabla" machen können sollte. Habe diverse Sachen ausprobiert, bin aber zu keinem vernünftigen Ergebnis gekommen.
Deshalb wäre ich um Hilfe sehr dankbar!

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

Betreff
Benutzer
Anzeige
AW: Frage zu Zellbezügen, Verlinkungen
28.09.2010 08:28:12
xr8k2
Hallo Klaus,
zeichne doch einfach deine gewünschte Aktion mal mit dem Makrorecorder auf ... dann hast du schon mal das Grundgerüst für dein Makro und die siehst, wie die Syntax für sowas aussieht.
Gruß,
xr8k2
Activecell.Formula="=A1" ...
28.09.2010 08:49:54
Matthias
Hallo
Genauso, wie Du denkst geht das auch
z.B
ActiveCell.Formula="=A1"
oder
ActiveCell.Formula="=Tabelle2!A1"
statt ActiveCell kannst Du auch Deine Laufvariablen cells(i,j) benutzen.


Bsp:
Sub klaus()
Dim j As Long
For j = 4 To 14
Cells(j, 3).Formula = "=A1"
Next
End Sub



oder z.B. für einen Bereich
Sub KLausBereich()
Dim rng As Range
Set rng = Range("C5:F10")
rng.Formula = "=$A$1"
End Sub
Gruß Matthias
Anzeige
AW: Activecell.Formula="=A1" ...
28.09.2010 09:47:05
Klaus
Servus Matthias,
ich möchte auch die "rechte Seite" mit Laufvariablen ansteuern - also das was du mit ="=A1" machst. Da habe ich dann das Problem, wenn ich das mit cells(i,j) lösen will, dass der Befehl einfach als Text reingeschrieben wird, und nicht ausgeführt wird.
Zum Thema Makrorekorder: Habe ich gerade ausprobiert - aber er macht die Lösung mit FormulaR1C1. Diese wäre sehr unangenehm. Außerdem spricht er die Blätter mit Namen an. Ich muss sheets(i) verwenden.
Servus Klaus
Deklariere als String ...
28.09.2010 10:05:29
Matthias
Hallo
hier ein Beispiel
bitte in einem leeren Blatt testen
Option Explicit
Sub klaus()
Dim mlo As Long, strg As String
Dim j As Long, i As Long
Cells(2, 2) = ":o)"
For i = 2 To 5
For j = 2 To 5
strg = Cells(j, i).Address(0, 1) 'absolut/relativ anpassen
For mlo = 1 To 5
Cells(i + mlo, mlo + j).Formula = "=" & strg
Next
Next j
Next i
End Sub
Gruß Matthias
Anzeige
AW: Frage zu Zellbezügen, Verlinkungen
30.09.2010 08:19:24
Klaus
Danke schon mal für die Infos und Bemühungen. Es wird allerdings noch eine Zeit dauern, bis ich das ausprobieren kann, da ich momentan etwas anderes bearbeiten muss.
Ich werde mich dann wieder melden.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige