Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Nutzer zwingen Daten in bestimmte Zelle zu kopieren

Forumthread: Nutzer zwingen Daten in bestimmte Zelle zu kopieren

Nutzer zwingen Daten in bestimmte Zelle zu kopieren
24.01.2025 12:10:04
velo6
Hallo zusammen,

ich habe ein Tool aufgebaut, dass Daten in verschiedenster Weise bearbeitet und auswertet.
Die Daten kommen aus einem SAP Download und sollen einfach nur im Worksheet "Daten" in A1 kopiert werden - der Code übernimmt dann formatieren, bearbeiten, etc.

Gibt es einen Weg den Nutzer zu zwingen den Download auch wirklich in A1 reinzukopieren, damit der Code auch sauber arbeiten kann?
Hab schon ein wenig mit Blattschutz experimentiert, aber noch keine Lösung gefunden.

Falls es zur Sache beiträgt: Der Download besteht aus 9 Spalten, nachdem der Code "drübergefahren" ist besteht die Tabelle aus 16 Spalten

Danke bereits im Voraus und VG
velo
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nutzer zwingen Daten in bestimmte Zelle zu kopieren
24.01.2025 14:37:49
Piet
Hallo

deine Frage erinnert mich an den DB Fahrkartenschalter, wenn man fragt: "Fahren Züge nach Berlin???"
Selbstverständlich, aber DU entscheidest doch in welchen du einsteigst, ICE, D-Zug oder, Bummelzug.
Willst du den Nutzer zwingen, kauft man ihm die Fahrkarte! - Damit ist er festgelegt wie er fährt!

Wir können dein Makro nicht sehen, du hast nichts hochgeladen, aber du musst doch beim kopieren ein Ziel angeben?
Es sei denn es ist ein Makro Recordercode mit dem Befehl - ActiveSheet.Paste - ohne jede Range Angabe!

Entweder gibst du vor Paste die Zielzelle mit - Range("A1").Select - an, oder du verwendest den PasteSpecial Befehl!
Sheets("Deine Quelle").Range("Dein Range").Copy -> ggf. noch das Quell Workbook davor setzen!
Sheets("Dein Ziel").Range("A1").PasteSpecial xlPastValues ' oder xlPasteAll 'für alle Formate, Schrift etc.

mfg Piet
Anzeige
AW: Nutzer zwingen Daten in bestimmte Zelle zu kopieren
24.01.2025 14:45:45
Piet
Nachtrag

unterscheide bitte klar und deutlich einen professionellen Kopier Code vom "Wischi waschi" Code des Makrorecorder!
Da steht oft ActiveSheet.Paste, das kann in JEDEM Sheet sein. Ist nicht klar definiert. Ziel ist dann das gerade aktive Sheet.
Ist kein Range angegeben ist die Zielzelle die Zelle in der der Cursor steht. Bei mehreren Mappen auch die Mappe angeben!

Das dein Kopiervorgang "sauber" abläuft ist Aufgabe des Programmierer. --> Excel ist kein Mensch, kann NICHT denken!
Man beachtet - Excel führt NUR Befehle aus! Aber das sturheil und konseqent. Selbst wir schießen gelegentlichn Eigentore!

mfg Piet
Anzeige
AW: Nutzer zwingen Daten in bestimmte Zelle zu kopieren
24.01.2025 14:52:28
velo6
Keine Sorge Piet, dem bin ich mir bewusst (müsste jedem bewusst sein der sich bei VBA als gut einschätzt) und benutze sowieso nur sehr sehr selten ActiveSheet :)
AW: Nutzer zwingen Daten in bestimmte Zelle zu kopieren
24.01.2025 14:48:34
velo6
Hallo Piet,

ja du hast Recht, wenn ich es per Code automatisch rein kopieren würde, dann wär das kein Problem.

Ich will aber umgehen, dass sich das Skript automatisch die Download-Datei schnappt und die Daten einfügt.
Der Nutzer soll die Daten selbstständig einfügen können, auch mit dem Hintergrund, dass die Download-Dateien meist unterschiedliche Namen haben und es nicht selten ist, dass Nutzer mehrere dieser Dateien offen haben.

Wenn es keine Lösung für dieses spezifische Problem gibt, dann ist es halt so, aber ich hoffe es wurde klar wieso ich nicht einfach ein Kopieren&Einfügen-Makro schreiben will.

VG
velo
Anzeige
AW: Nutzer zwingen Daten in bestimmte Zelle zu kopieren
24.01.2025 15:26:20
Piet
Hallo

verstanden, aber da kann ich dir evtl. auch mit meiner Idee weiterhelfen.
Es gibt immer wieder Anfragen Daten aus anderen Dateien zu kopieren.
Das Problem ist die Datei öffnen, wenn sich die Namen ständig ändern.

Dieses Makro umgeht das Problem, die 2. Datei - muss geöffnet - sein!
Der Datei Name ist dann egal, den lege ich über die Set Anweisung fest.
Der Copy Befehl kann auch entfallen, wenn der Bereich schon kopiert ist!

mfg Piet

ub Dateien_vergleichen_Filiale_A()

Dim WbEx As Workbook, xSht As Worksheet, n As Long
If Workbooks.Count 2 Then _
MsgBox "2. Datei ist nicht geöffnet!", vbInformation: Exit Sub
If Workbooks(1).Name = ThisWorkbook.Name Then _
Set WbEx = Workbooks(2) Else Set WbEx = Workbooks(1)
Set xSht = WbEx.Sheets("Tabelle1")
lz2 = xSht.Cells(Rows.Count, 1).End(xlUp).Row

With ThisWorkbook.Sheets("Tabelle1")
xSht.Range("T2:T" & lz2).Copy '** kann evtl. entfallen
.Range("A2").PasteSpecial xlPasteValues

Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18