Excel 2013: Wert aus Variable (VBA) in Zelle schreiben?

1 Antwort

Vom Beitragsersteller als hilfreich ausgezeichnet

range("A1").value=i

wenn Du es kürzer machen willst, kannst Du die Count Eigenschaft verwenden, dann entfällt auch die for-/next schleife

range("A1").value=ActiveSheet.Comments.Count


Ninombre  18.11.2016, 20:32

um auf die eigentliche Frage noch mal zu kommen, wie man in Zellen etwas einträgt:

Zellen kannst Du über Range wie oben im Beispiel ansprechen (wobei eine einzige Zelle ein etwas überschaubarer Bereich wäre) oder mit cells. Hier aber beachten, dass erst die Zeile, dann die Spalte genannt wird
cells(2,1).value wäre A2

Die Angabe mit Range ist für viele leichter lesbar. Wenn Du bei der Spalte aber auch mit einer Variablen arbeitest, finde ich wiederum cells(x,y) geeigneter.

Da Du den Wert verändern willst, ist es eben range("A1").value  - wenn Du da etwas herumspielst, findest Du auch die anderen Möglichkeiten - range("A1").interior.color für die Zellfarbe etc.

Das Auslesen eines Zellwertes geht nach dem gleichen Prinzip:

i=Range("A1").value*27 etc.

0
Iamiam  19.11.2016, 01:03
@Ninombre

und wenn Du per VBA eine Formel setzen (oder ändern) willst, im dt. Excel:

ActiveSheet.Range("A1").FormulaLocal = "=Summe(A2:A99)"

Zur Abfrage, ob eine Formel drinsteht, gibts die Funktion

if Hasformula(Activesheet.Range("A1")) then ...

Genaue Syntax müsste ich auch erst nachschauen. Ob man die so zählen kann, auch

1