kopierte Daten überprüfen (VBA)
#11
ich fress nen Besen. Lassen wir das, wir drehen uns hier im Kreis :D
Antworten Top
#12
Hi,

Wir drehen uns nicht im Kreis.
Erstes Problem war die Zwischenablage.  Habe ich geschrieben,  dass Du sie im Makro leeren sollst.
Zweites Problem ist, dass die Daten nicht ins falsche Blatt dürfen. Auch dazu habe ich geschrieben,  dass Du das im Makro festlegen musst.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#13
Hallo,

erinnert mich an dies: https://www.clever-excel-forum.de/Thread...#pid286516

Gruß, Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Sabotaz
Antworten Top
#14
moin

na das ist ja ein Karussell  Huh
ich glaube eher er möchte verhindern, dass jemand manuell, also ohne Makro, kopiert

mfg Tom
Antworten Top
#15
(11.05.2024, 16:30)BoskoBiati schrieb: Erstes Problem war die Zwischenablage.  Habe ich geschrieben,  dass Du sie im Makro leeren sollst.
Zweites Problem ist, dass die Daten nicht ins falsche Blatt dürfen. Auch dazu habe ich geschrieben,  dass Du das im Makro festlegen musst.

ok, lassen wir das erstmal mit der Zwischenablage beiseite, das war jetzt nicht mein Problem. Das habe ich in meiner richtigen Tabelle schon hinterlegt.

Wie setze ich aber deine Lösung zum Thema "Daten ins falsche Blatt" um? Mir fehlt dafür der Ansatz... Wie lege ich das denn im Makro fest?

(11.05.2024, 16:31)Kuwer schrieb: Hallo,

erinnert mich an dies: https://www.clever-excel-forum.de/Thread...#pid286516

Gruß, Uwe

Mich auch, ist aber doch was Anderes :D

(11.05.2024, 16:35)Crazy Tom schrieb: moin

na das ist ja ein Karussell  Huh
ich glaube eher er möchte verhindern, dass jemand manuell, also ohne Makro, kopiert

mfg Tom

Nein, das wäre mir egal... Obwohl das auch schon interessant ist  Dodgy

Zum Testen:

1. Öffne meine Beispieldatei 2x (das Original und eine Kopie davon)
2. Öffne auf der einen Datei "Übersicht" und klicke auf "Übersicht kopieren"
3. Öffne auf der Kopie "Ersatzteile" und klicke 'ausversehen' auf "Ersatzteile einfügen"
4. "Mist!"
Antworten Top
#16
in deinen Makros zum einfügen steht doch drin 
welches Tabellenblatt vor dem Einfügen selected werden soll 

Sub Einfügen_Übersicht()
'
' Einfügen_Übersicht Makro
'

'
    Sheets("Übersicht").Select <-- da wird es doch ausgewählt
    Range("A2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End Sub

ich glaube kaum das Excel dann sacht: näää ich kopier das in ein anders Blatt
Antworten Top
#17
(11.05.2024, 16:58)Crazy Tom schrieb: in deinen Makros zum einfügen steht doch drin 
welches Tabellenblatt vor dem Einfügen selected werden soll 
Sub Einfügen_Übersicht()
'
' Einfügen_Übersicht Makro
'
'
    Sheets("Übersicht").Select <-- da wird es doch ausgewählt
    Range("A2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End Sub
ich glaube kaum das Excel dann sacht: näää ich kopier das in ein anders Blatt



Das weiß ich doch  22

WENN man auch den richtigen Button drückt, dann passt das doch auch. WENN ich aber in einem anderen Tabellenblatt auf einfügen drücke, dann fügt er die zuvor aus "Übersicht" kopierten Daten in bspw. "Ersatzteile" ein. probier es doch bitte mal so aus, wie ich es zuletzt meinte:

1. Öffne meine Beispieldatei 2x (das Original und eine Kopie davon)
2. Öffne auf der einen Datei "Übersicht" und klicke auf "Übersicht kopieren"
3. Öffne auf der Kopie "Ersatzteile" und klicke 'ausversehen' auf "Ersatzteile einfügen"
4. "Mist!"

es geht darum, eventuelle Fehlbedienung und daraus resultierender Zerstörung der Tabellen zu verhindern. Da ist es egal, welchen Sheet ich beim Ausführen des Makros hinterlege, wenn der Inhalt der Zwischenablage nicht passt.

Es geht doch darum, dass beim Einfügen ein anderes, also ein falsches Makro ausführbar ist und genau da liegt der Knackpunkt. Das Karussell wird echt  20
Antworten Top
#18
dann spar dir die Makros zum kopieren und einfügen
schreib beide Codes ohne das selektieren in 1 (in Worten EIN) Makro
beispielsweise lässt du auf dem Tabellenblatt "Übersicht" 1 Button
dieser Button kopiert aus der einen Datei die Daten aus Blatt Übersicht und fügt sie ins aktive Tabellenblatt ein

grob gesehen würde so ein Makro so aussehen

Code:
Sub kopier_mich()
    Workbooks("A").Sheets("Tabelle1").Range("A1:A15").Copy Workbooks("B").Sheets("Tabelle1").Range("A1")
End Sub

zu starten wäre das Makro aus der Zieldatei, also aus der Datei, in die es reinkopiert werden soll
Voraussetzung natürlich, dass beide Dateien offen sind
ansonsten musst du das Öffnen auch noch ins Makro packen
[-] Folgende(r) 1 Nutzer sagt Danke an Crazy Tom für diesen Beitrag:
  • Sabotaz
Antworten Top
#19
(11.05.2024, 17:15)Crazy Tom schrieb: dann spar dir die Makros zum kopieren und einfügen
schreib beide Codes ohne das selektieren in 1 (in Worten EIN) Makro
beispielsweise lässt du auf dem Tabellenblatt "Übersicht" 1 Button
dieser Button kopiert aus der einen Datei die Daten aus Blatt Übersicht und fügt sie ins aktive Tabellenblatt ein

Das wäre ein Ansatz und würde den Fehler verhindern. Wie handhabe ich es aber, wenn die Dateien immer anders heißen (und ich jetzt nicht weiß, wie sie die Dateien benennen werden)?
Antworten Top
#20
setz die Namen der Workbooks in eine Variable
und zwing deine Leute (notfalls mit Waffengewalt  05 ) über eine Inputbox Quell und Zieldatei anzugeben

wobei du die Zieldatei mit ThisWorkbook... ansprechen kannst
[-] Folgende(r) 1 Nutzer sagt Danke an Crazy Tom für diesen Beitrag:
  • Sabotaz
Antworten Top


Gehe zu:


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