Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1956to1960
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
02.01.2024 20:37:19
Andreas Reinberger
Hallo, hoffe das mir wer helfen kann.
Ich möchte aus meiner Interactions Tabelle mittels Schaltflächen und ComandButten
immer aus der selben Zelle einen Wert in ein anderes Tabellenblatt(Ofen) einfügen.
Dieses Tabellenblatt ändert sich bis zu 8x. Der Bereich soll aber immer der gleiche
bleiben (Je Button) z.b. B32:G43, momentan stehe ich an.
Danke im voraus.

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

Betreff
Datum
Anwender
Anzeige
AW: Werte übertragen
03.01.2024 01:35:17
Piet
Hallo

wenn die Quell- und Zieladressen immer gleich bleiben geht es so. Ein einfacher Simpel Code.
Für Quelle und Ziel musst du bitte deine Tabellen Namen abgeben. Und bei Ziel die Zielzelle!

mfg Piet

Sub kopieren()

Worksheets("Quelle").Range("B32:G43").Copy
Worksheets("Ziel").Range("xxx").PasteSpecial xlPasteValues
Application.CutCopyMode = False
End Sub
AW: Werte übertragen
03.01.2024 09:48:47
Andreas Reinberger
Danke für die schnelle Antwort .
Da ich mich erst einlese in die Vba Programmierung kam es möglicherweise
falsch an. Es ist die Zelle in der Interactions - Tabelle die Ausgeschnitten werden
soll, dieser Wert ändert sich bei bei jedem mal Ausschneiden und nur dieses
Tabellenblatt ist eingeblendet. Das Tabellenblatt(Ofen) gibt es in 8 verschiedenen
Varianten und nur das ,dass benötigt wird ist eingeblendet. Den Bereich der mit
den Schaltflächen ausgewählt wird ist aber immer der gleiche, (Ofen1 - im Bereich
B32:G43, Ofen2 usw.). Diese Werte sollen im darauffolgenden Schritt in der Zelle weiter
unten zusammen gerechnet werden.
Vielen Dank für eure Unterstützung
Anzeige
AW: Werte übertragen
03.01.2024 10:37:26
volti
Hallo Andreas,

hier noch eine Variante als Beispiel.

Der Code ermittelt, welches Tabellenblatt Ofen1,Ofen2 usw. eingeblendet ist und kopiert den angegebenen Wertebereich aus dem Blatt "Interactions" in das gefundene Ofen-Blatt. Für die Übertragung von Werten bedarf es keines Copy-Befehls, man kann es auch direkt übernehmen.
Der Code ist in Ermangelung einer Beispieldatei ungetestet.

PS: Deine Beschreibung ist für mich nicht eindeutig. Du sprichst von Ausschneiden, einer Zelle, mit Schaltflächen ausgewählter Bereich und zusammenrechnen.

Aber vielleicht reicht ja der angegebene Code schon...

Code:


Sub Kopieren() Dim WSh As Worksheet, sBer As String, i As Integer sBer = "B32:G43" For i = 1 To 8 If Worksheets("Ofen" & CStr(i)).Visible = True Then WSh.Range(sBer).Value = Worksheets("Interactions").Range(sBer).Value Exit For End If Next i End Sub

_________________________
viele Grüße aus Freigericht 😊
Karl-Heinz
Anzeige
AW: Werte übertragen
03.01.2024 11:08:37
Andreas Reinberger
Danke, es entsteht ein Laufzeitfehler "9"
Der Index ist außerhalb des gültigen Bereichs,
ich trage den Code in das Modul für die Nachtschicht ein.
Könnte hier der Fehler Liegen?
AW: Werte übertragen
03.01.2024 11:27:27
volti
Hallo,

der Code sollte in ein normales Codemodul sein.

Gibt es denn überhaupt die Tabellenblätter Ofen1 bis Ofen8?
Gibt es das Tabellenblatt "Interactions"?
Ist das Workbook, in dem diese Blätter liegen das aktive?

Scheint mir eher daran zu liegen.

Gruß KH
AW: Werte übertragen
03.01.2024 11:57:40
Andreas Reinberger
Der Mitarbeiter zb. aus der Nachtschicht sieht nur die Interaction, mit einem Programmierten Zahlenblock
soll der Ma einen Wert = Gewicht in die Zelle I20 Tippen. Dieser wird mit der Schaltfläche Material ausgeschnitten
und in den Bereich Material =B32:G43, mit der Schaltfläche Ausschuss in den Bereich H32:M43 usw. Kopiert. Jeder Wert
hätte eine anderes Gewicht, dieses gehört anschließend in der Tabelle Ofen addiert.
Den Cod für die Frühschicht schreibe ich in Modul 1 = Zeile 1-17, 18 ist leer.
Den Cod für die Mittagsschicht schreibe ich in Modul 2 = Zeile 19-30, 31 ist leer.
Den Cod für die Nachtschicht schreibe ich in Modul 3 = Zeile 32-43, 44 ist leer.
Anzeige
AW: Werte übertragen
03.01.2024 12:22:53
volti
Hallo,

sorry, das ist mir zu kompliziert, und ohne Datei kann ich Dir da ohnehin nicht weiterhelfen.

Gruß KH
AW: Werte übertragen
03.01.2024 13:04:25
Andreas Reinberger
Hallo,
Mit diesen Code rufe ich per Schaltfläche zb. 1. Schicht und den jeweiligen Ofen auf, es sind 2Tabellenblätter sichtbar alle anderen sind ausgeblendet
und der Mitarbeiter hat keine Tastatur und kann über die Schaltflächen die Öfen Anklicken bleibt aber in der Interaction mit dem Zahlenblock (noch nicht erstellt)
wird das Gewicht in die Zelle I20, von mir als probe erstmal am PC u. F8 ausprobiert eingetragen. Diese Zahl soll nun aus dieser Zelle in das Tabellenblatt Ofen1
in den genannten Bereich geschoben werden um die Zelle für den nächsten Wert wieder frei zu machen. Im Tabellenblatt Ofen sollen dann die Werte der jeweiligen
Schicht addiert werden.
Ich kann das Tabellenblatt Ofen nicht direkt ansprechen da diese per Schaltfläche verändert werden kann und mit dem Index komme ich irgendwie auch nicht weiter
auch den Wert untereinander und von links nach rechts hakts noch.
Würde mich freuen wenn ich das irgendwie in den Griff bekommen würde.

Sub Schaltfläche30_Klick()
'
'Ofen1 Aufrufen
'
Sheets("1").Select
Sheets("Ofen1").Visible = True
Sheets("1").Select
Dim wks As Worksheet
For Each wks In ActiveWorkbook.Worksheet
If wks.Name("1") Then
If wks.Name("Ofen1") Then
wks.Visible = xlSheetHidden
End If
End If
Next
End Sub

Sub Schaltfläche27_Klick()
'
'Ofen2 Aufrufen
'
Sheets("1").Select
Sheets("Ofen2").Visible = True
Sheets("1").Select
Dim wks As Worksheet
For Each wks In ActiveWorkbook.Worksheet
If wks.Name("1") Then
If wks.Name("Ofen2") Then
wks.Visible = xlSheetHidden
End If
End If
Next
End Sub

Danke
Anzeige
AW: Werte übertragen
03.01.2024 17:02:11
Piet
Hallo

ich bin mehr als überrascht über deinen Code, bei mir mit Excel 2003 läuft er nicht!
Zum Sheet ausblenden braucht man keine For Next Schleife, der untere Code genügt.
Dein Code blendet auch nicht alle Sheets aus! Dazu müsste er anders lauten!

If wks.Name("1") Then führt zu Laufzeitfehler, so funktioniert er bei mir - If wks.Name = "1" Then
Weil dahinter aber nicht programmiert wird, was der Code machen soll, geschieht praktisch nichts!

Um Daten nach Ofen1 zu senden musst du dir im sichtbaren Sheets(1) auch in einer Zelle den Ofen1 notieren!
Woher soll der Code sonst wissen, wohin die Daten bei 2 Öfen gehören? Excel kann nicht selbständig denken!!
Bleibt die Frage, soll in einer bestimmten Zelle der Wert addiert werden, oder sollen die Werte untereinander geschrieben werden??

mfg Piet

  • Sub Ofen_test()
    Sheets("1").Visible = True
    Sheets("Ofen1").Visible = xlSheetHidden
    End Sub
  • Anzeige
    AW: Werte übertragen
    03.01.2024 18:21:47
    volti
    Hallo Andreas,

    mir sieht der Code auch merkwürdig aus.

    Aber hier noch en Tipp.
    Den Code kannst Du verringern, in dem Du aus jeder Sub Schaltfläche_Click immer ein und dieselbe Sub EinAusblenden (z.B. im Modul1) aufrufst und den Namen des sichtbar zu schaltenden Tabellenblatts übergibst.
    s.Muster
    AlleOfen-Blätter, bis auf das übergebene werden ausgeblendet...

    Code:


    Sub Schaltfläche30_Klick() EinAusblenden "Ofen1" End Sub Sub Schaltfläche27_Klick() EinAusblenden "Ofen2" End Sub Sub Schaltfläche31_Klick() EinAusblenden "Ofen3" End Sub Sub Schaltfläche28_Klick() EinAusblenden "Ofen4" End Sub Sub EinAusblenden(sBlatt As String) ' z.B. im Modul1 ablegen Dim WSh As Worksheet For Each WSh In ThisWorkbook.Worksheets If WSh.Name Like "Ofen#*" Then WSh.Visible = WSh.Name = sBlatt ' Alle Ofen bis auf das eine ausblenden End If Next WSh End Sub

    _________________________
    viele Grüße aus Freigericht 😊
    Karl-Heinz

    Anzeige
    AW: Werte übertragen
    03.01.2024 23:28:49
    Andreas Reinberger
    Hallo, und einen schönen Abend
    Bei mir funktioniert der Code einwandfrei, er bewirkt das man mit einer Schalfläche in der Interactions - Tabelle aktive
    und eine weitere Tabelle Ofen sichtbar sind beim drücken der nächsten Schaltfläche Ofen2 wird diese eingeblendet
    und Ofen1 ausgeblendet. es sind in dem Fall immer 2 Sheets sichtbar. Dies ist der Grund warum ich die Sheets nicht
    per Name sondern im Index ansprechen muss. Oder wie in meinem fall schließe ich kurzfristig die Interactionstabelle.
    Mit mehren Schaltflächen soll nun der Wert einer Zelle übertragen werden.
    Bis B32 funktioniert es schon danach überschreibt sich der Wert springt nicht selbstständig nach unten bzw. nach rechts.
    Anzeige
    AW: Werte übertragen
    04.01.2024 00:34:27
    Piet
    Hallo Andreas

    bsiher war noch nichts davon zu sehen wohin die Daten kopiert werden sollen. Wir können nicht Hellsehen!
    Woher sollen wir wissen, von wo du bis zur Zelle B32 überträgst, und wie es danach weitergehen soll??
    Wieviele Zeilen können pro Ofen maximal ausgefüllt werden? Was geschieht wenn die letzte Stelle erreicht wird?
    Wann und wie werden die Daten wieder gelöscht??

    mfg Piet

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige