1.7k Aufrufe
Gefragt in Tabellenkalkulation von desiato Mitglied (115 Punkte)
Hallo zusammen,

ich habe ein kleines Problem und hoffe ihr könnt mir helfen.

In meiner Tabelle1, Zellen A2 bis A4 habe ich Werte stehen, bei deren Änderung automatisch das Makro "Werte_berechnen" startet.

Dieses Makro "Werte_berechnen" wählt in Tabelle2 die Zelle C1 mit Worksheets("Tabelle2).range("c1").select aus, führt per Schleife (sagen wir zähler von 0 bis 4) Berechnungen aus und schreibt diese per activecell.offset(zähler,0) in die Zellen C1 bis C6.

Da bekomme ich allerdings eine Fehlermeldung, weil ich mich bei der Ausführung des Makros in Tabelle1 befinde.

Gibt es da eine Lösung ohne Tabelle2 über activate zu aktivieren?

Danke schon mal im voraus...

5 Antworten

0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo,

warum postest Du nicht den gesamten Code, dass man einen Zusammenhang erkennt?

Und eine bessere Beschreibung zur angesprochenen Berechnung wäre auch nicht schlecht.
Mit welchen Werten unter welchen Kriterien soll getechnet werden?

Gruss
Rainer
0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi,

in VBA kann man zu 99% auf Select und Activate verzichten, dann gibt es auch keine Fehlermeldung - nach diesem Prinzip:
Sub Berechnen()
Dim bytZaehler As Byte
For bytZaehler = 1 To 4
Cells(bytZaehler, 3) = Worksheets("Tabelle2").Cells(bytZaehler, 3) * 25
Next bytZaehler
End Sub

Bis später,
Karin
0 Punkte
Beantwortet von desiato Mitglied (115 Punkte)
@Rainer:
Ich habe den Code nicht gepostet, weil er etwas länger und komplizierter ist, aber evtl. komme ich wohl doch nicht drum herum.
Ich wollte erstmal abwarten, ob es eine grundsätzliche Lösung gibt.

@Karin:
Es müsste umgekehrt sein,
Worksheets("Tabelle2").Cells(bytZaehler,3) = Cells(3,1)*25(oder so ähnlich), damit etwas in Tabelle2 geschrieben wird, aber das nur am Rande.

Also darf ich im Prinzip nur auf den "Wert" der Zelle zugreifen, nicht auf die Zelle selbst?

Ich probiere mal meinen Code dementsprechend umzustricken...
0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi,

auf die Zelle zugreifen ohne sie zu aktivieren (bzw. selektieren) - so ist es korrekter ausgedrückt. Du kannst auf diese Weise die Eigenschaften der Zelle(n) ansprechen bzw. verändern: Wert (Inhalt), Füllfarbe, Schriftart, Rahmen usw.

Bis später,
karin
0 Punkte
Beantwortet von desiato Mitglied (115 Punkte)
Danke, hab es hinbekommen und jetzt läuft es :-)
...