Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel VBA - Range mit Cells
#1
Hallo zusammen,

ich benötige Eure Hilfe, um eine Range sehr dynamisch zu definieren.

Ich möchte eine Range mittels Variablen und einem Wert aus einem Register festlegen.

Mein (nicht funktionierender) Code zur Range-Ermittlung wäre:
Code:
z = 1
ws.Range(Cells(Hilfsrechner, ws3.Cells(4 + z, 4).Value), Cells(Hilfsrechner, ws3.Cells(4 + z, 4).Value)).Value = "beispiel"

ws und ws3 sind als Worksheet deklariert und beide haben jeweils ein Worksheet zugewiesen bekommen.

Kann ich überhaupt vom Worksheet ws3 aus der Zelle (4 + z, 4), sprich aus D5 einfach den Value nutzen?
In der Spalte D stehen Zahlen von 1- 100.

In dem Code Beispiel möchte ich die Zelle ermitteln, welche ausgefüllt werden soll und dort soll "beispiel" als Text reingeschrieben werden.

Besten Dank für Eure Hilfe.
Antworten Top
#2
Hallo Korain,

was funktioniert nicht? Gibt's ne Fehlermeldung oder macht der Code nicht, was er soll (was soll er tun, was macht er?)?

Probier doch mal:
Code:
ws.Range(ws.Cells(Hilfsrechner, ws3.Cells(4 + z, 4).Value), ws.Cells(Hilfsrechner, ws3.Cells(4 + z, 4).Value)).Value = "beispiel"

Im .Range müssen auch die einzelnen Zelle eindeutig referenziert werden...

Deine Range-Konstruktionist natürlich nur dann notwendig, wenn sich Anfang und Ende unterscheiden. Solltest Du nur eine Zelle beschreiben wollen, reicht natürlich:
Code:
ws.Cells(Hilfsrechner, ws3.Cells(4 + z, 4).Value) = "beispiel"

Gruß,
Lutz
Antworten Top
#3
Hallo

Excel arbeitet sehr präzise, aber nicht wenn man im Code "Pipii Langstrumpf aus der Villa Kunterbutn" programmiert!
Da kommt Excel ins grübeln und spielt nicht mit!  Sorry, ich konnte mir meinen Kölner Humor nicht verkneifen!  

Schauen wir uns deinen Code mal an:  Was bitte ist "Hilfsrechner"???  Excel erwartet dort eine Zahl für die Zeile, keine Tabellenangabe!
Dann gibst du mal ws und ws3 im Code an. Holst kunterbunt Zeilen und Spalten aus verschiedenen Tabellen. Wie soll das klappen???
Excel arbeitet schlicht und neinfach nach streng ogischen Prinzipien, erwartet konkrete Anweisungen. Dann klappt der Code!

Wenn du uns bitte sagst was du von wo holen willst, und wohin genau du kopieren willst, können wir dir den Code korrigieren.
So bin ich nur am raten was du genau passieren soll????

mfg Gast 123
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste