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

Werte übertragen

Werte übertragen
12.01.2024 15:23:56
Andreas Reinberger
Hallo, miteinander
ich versuche einen neuen Ansatz die Werte von Tabelle A in Tabelle B zu übertragen um sie anschließend zu addieren.
Da sich Tabelle B immer ändert hätte ich gerne via Index Selected, dies wurde mit einem Laufzeitfehler 1004 gestoppt.
Nun blende ich Tabelle A kurzfristig aus um den Wert zu übertragen, in der If Anweisung überspringt er mir dann jede
2 Zeile. Wär toll wenn jemand einen Rat hätte, Danke.

Sub Kreislauf_3()
'
'Schaltfläche8
'
Dim Wert As Integer
Sheets("3").Select
Wert = Range("I16")
Sheets("3").Visible = False
Range("B32").Select
If Sheets(2).Range("B32").Offset(1, 0) > "" Then
Sheets(2).Range("B32").End(xlDown).Select
End If
If Cells(44, 44).Offset(-16, 1) > "" Then
Sheets(2).Range(44, 44).End(xlDown).Select
End If
Sheets("3").Visible = True
Sheets("3").Select
End Sub

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte übertragen
12.01.2024 15:46:11
onur
Poste bitte auch die Datei dazu.
AW: Werte übertragen
12.01.2024 15:53:51
Piet
Hallo

ich schicke dir deinen Code mal OHNE Select zurück. Völlig überflüssig! Das verursacht nur Laufzeitfehler!
Den Wert kannst du direkt aus Sheet3 laden, ohne Select! Willst du den Wert bei Range("B32") einfügen??

Sheets(2).Range("B32").End(xlDown) .Select ist eine unzulässige Synthacs!! -- Laufzeitfehler!
In dem Fall musst du zuerst das Sheet selektieren, danach den Range. Aber NIE beides zusammen!
Sheets(2).Range(44, 44). ist ebenfalls unzulässig. Sollte das Cellsl(44, 44) statt Range heissen??
Bei Range muss die Spalte immer als Buchstabe angegeben sein, nur bei Cells geht es mit Index 44!

mfg Piet

Sub Kreislauf_3()

Dim Wert As Integer
Wert = Sheets("3").Range("I16").Value
If Sheets(2).Range("B32").Offset(1, 0) > "" Then
Sheets(2).Range("B32").End(xlDown) = Wert
End If
If Sheets(2).Cells(44, 44).Offset(-16, 1) > "" Then
Sheets(2).Cells(44, 44).End(xlDown) = Wert
End If
End Sub
Anzeige
AW: Werte übertragen
12.01.2024 15:58:33
Piet
Nachtrag

dein Code funktioniert, wenn du Sheet(3).Visible ausblendest, und danach Sheets(2) das aktive Sheet ist!
Ist aber eine völlig laienhafte Programmierung. Trotzdem freut man sich wennn es damit klappt!

mfg Piet

AW: Werte übertragen
12.01.2024 17:47:42
Andreas Reinberger
Danke bin komplett neu in der Welt von VBA, und mit Range(44, 44) hätte ich gerne die komplette Zeile gemeint
dachte hätte es so in den Videos gesehen. Die Werte sollen bis 43 runter gehen und anschließend in die nächste
Spalte wieder bei Zeile 32 starten. Mit dem Begriff Cells spreche ich doch wieder nur eine Zelle an oder?
Sheet("3") heißt 3 wobei Sheets(2) Die Indexierung ist da sich Tabelle 2 ändern kann.
Den Code werde ich auf jeden fall versuchen zu übertragen, DANKE.
Anzeige
AW: Werte übertragen
12.01.2024 18:24:36
Andreas Reinberger
Wird weiterhin die 2 If Anweisung übersprungen und nichts in Tab 2 Übergeben? Bin ratlos.

Kreislauf_3()
'Schaltfläche8

Dim Wert As Integer
Wert = Sheets("3").Range("I16").Value
If Sheets(2).Range("B32").Offset(1, 0) > "" Then
Sheets(2).Range("B32").End(xlDown) = Wert
End If
If Sheets(2).Cells(44, 44).Offset(-16, 1) > "" Then
Sheets(2).Cells(44, 44).End(xlDown) = Wert
End If
End Sub
Danke
AW: Werte übertragen
12.01.2024 18:29:03
onur
Range("B32").Offset(1, 0) ??
Warum nicht direkt
Range("C32") ???
Cells(44, 44).Offset(-16, 1) ??
Warum nicht direkt
Cells(28, 45) ???
Anzeige
AW: Werte übertragen
12.01.2024 18:45:58
Andreas Reinberger
Wert wird mittels Schaltfläche übergeben und soll von B32 bis B43 eingetragen werden danach in spalte C und immer nur mit
der Schaltfläche auf der Tabellenblatt 3, würde ich jede Zelle ansprechen bräuchte ich hunderte von Schaltflächen. Oder?
AW: Werte übertragen
12.01.2024 18:49:50
onur
"und soll von B32 bis B43 eingetragen werden" ???
WO in deinem Code steht das denn?
In deinem Code steht nur das, was ich mit "warum nicht direkt " beschrieb.
AW: Werte übertragen
12.01.2024 19:01:57
Andreas Reinberger
Mit dem Integer wird der Wert von Tabelle 3 bestimmt und in der If Anwendung wenn nicht > "" dann in B32 der Tabelle2
sonst eines darunter, hab ich da was durcheinander gebracht? Ich lerne es durch Videos und diesen Foren, mag sein das ich da einen
Gedankenknoten hab.
Anzeige
AW: Werte übertragen
12.01.2024 19:04:37
onur
Da ich weder die Datei habe noch weiss, was genau du willst, kann ich nur sagen, was dein Code so alles macht.
AW: Werte übertragen
12.01.2024 18:52:07
onur
Offset heisst nicht "von bis" - Offset ist nur diese eine Zelle..
Cells(2,2).Offset(-1,-1)
ist nix anderes als
Cells(1,1)
.
AW: Werte übertragen
12.01.2024 20:33:47
Piet
Hallo Andreas

statt 100 Schaltflächen auszudenken lade uns lieber mal deine Beisopeldatei mit anonymen Daten hoch, mit einer Lösung von Hand.
Wenn wir die Datei sehen fällt uns sicher eine bessere Lösung ein, als das nutzlose Rumraten wie es genau funktionieren soll??
Gegebenfalls geht das mit einem Target Makro, dann brauchst du überhaupt keinen Button. Aber so raten wir nur herum!

mfg Piet
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige