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

Daten in ein anderes Tabellenblatt kopieren VBA

Daten in ein anderes Tabellenblatt kopieren VBA
12.03.2017 09:23:02
mikey20333

Hi,
Könnt ihr mir da bitte weiterhelfen, habe nämlich noch nicht so viel erfahrung mit VBA - aber ich würde gerne Dateien die sich zuvor in einem anderen Tabellenblatt von oben nach unten eingetragen wurden einfach mit einen Button in ein anderes Tabellenblatt
kopieren. Die kopierten Daten sollen jedoch im querformat in jede zelle eingetragen werden. Ich habe hier schon eine beispieldatei und wollte fragen ob die eintragungen im VBA script nicht einfacher programmiert werden können.
https://www.herber.de/bbs/user/112122.xlsm

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten in ein anderes Tabellenblatt kopieren VBA
12.03.2017 11:36:07
Werner
Hallo Mikey,
kann mir deine Datei im Moment nicht ansehen aber so z.B.:
Public Sub Kopieren_Transponieren()
Dim loLetzte As Long
Application.ScreenUpdating = False
With Sheets("Tabelle1")
loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row 'Spalte A, an deine Verhältnisse anpassen
.Range(.Cells(1, 1), .Cells(loLetzte, 1)).Copy 'kopiert ab A1 bis A letzte -anpassen
Sheets("Tabelle2").Range("A1").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
End With
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
Gruß Werner
Anzeige
AW: Daten in ein anderes Tabellenblatt kopieren VBA
12.03.2017 13:27:46
André
Vielen Dank Werner für Deine Hilfe, aber ich wollte eigentlich was anderes...
die Formel mit dem Datum war ja nur eine Änderung von einer festen Eingabe auf eine zellenbezogene
-- von --
WHERE (tbSpulen.Datum Between {ts '2017-02-24 00:00:00'} And {ts '2017-03-02 00:01:00'})
-- auf --
WHERE (tbSpulen.Datum Between {ts '" & Range("M1").Text & "'} And {ts '" & Range("M2").Text & "'})
und genau an so was ähnliches habe ich bei der Basilnummer auch gedacht
-- von --
and tbPaletten.BasilCode in (187135562859690373)
-- auf --
?
Ein Grund, die Datenmengen sind sehr groß und ich will sie durch die Abfrage bereits verringern.
Trotzdem Danke für die schnelle Antwort. Vielleicht hast Du ja hierfür auch eine Lösung?!
Gruß André
Anzeige
AW: Daten in ein anderes Tabellenblatt kopieren VBA
12.03.2017 15:09:30
Werner
Hallo Mikey oder Andre,
ich bin nur nach dem Betreff gegangen. Kann im Moment keine .xlsm downloaden.
Gruß Werner
AW: Daten in ein anderes Tabellenblatt kopieren VBA
13.03.2017 09:27:07
mikey20333
Hi,
danke für die vielen infos, habe nur ein problem das meine Daten nicht immer an derselben stelle
stehen, habe das makro getestet funktioniert super, aber wie passe ich das ganze an wenn ich wie ich dieses makro habe.
Private Sub CommandButton1_Click()
Dim letzte As Long
Dim spalte As Long
Dim i As Long
Dim wksQ As Worksheet
Set wksQ = Worksheets("Eingabe")
i = 0
With Worksheets("Liste").Range("Tabelle1[Datum]")
If .Cells(.Count, 0)  "" Then
i = 1
Worksheets("Liste").ListObjects("Tabelle1").Resize Range("$A$9:$Z$" & 10 + .Count) 'Tabelle  _
erweitern
End If
.Cells(.Count + i, 0) = .Cells(.Count, 0).Value + 1
.Cells(.Count + i, 1).Value = Format(wksQ.Range("C4").Value, "dd.mm.yyyy")
.Cells(.Count + i, 2).Value = wksQ.Range("C6").Value
.Cells(.Count + i, 3).Value = wksQ.Range("C8").Value
.Cells(.Count + i, 4).Value = wksQ.Range("E13").Value
.Cells(.Count + i, 5).Value = wksQ.Range("E14").Value
.Cells(.Count + i, 6).Value = wksQ.Range("E15").Value
.Cells(.Count + i, 7).Value = wksQ.Range("E16").Value
.Cells(.Count + i, 8).Value = wksQ.Range("F13").Value
.Cells(.Count + i, 9).Value = wksQ.Range("F14").Value
.Cells(.Count + i, 10).Value = wksQ.Range("F15").Value
.Cells(.Count + i, 11).Value = wksQ.Range("F16").Value
.Cells(.Count + i, 12).Value = wksQ.Range("F20").Value
.Cells(.Count + i, 13).Value = wksQ.Range("F21").Value
.Cells(.Count + i, 14).Value = wksQ.Range("F22").Value
.Cells(.Count + i, 15).Value = wksQ.Range("F23").Value
.Cells(.Count + i, 16).Value = wksQ.Range("F27").Value
.Cells(.Count + i, 17).Value = wksQ.Range("F28").Value
.Cells(.Count + i, 18).Value = wksQ.Range("F29").Value
.Cells(.Count + i, 19).Value = wksQ.Range("F30").Value
.Cells(.Count + i, 20).Value = wksQ.Range("F31").Value
.Cells(.Count + i, 21).Value = wksQ.Range("F32").Value
.Cells(.Count + i, 22).Value = wksQ.Range("F33").Value
.Cells(.Count + i, 23).Value = wksQ.Range("F34").Value
.Cells(.Count + i, 24).Value = wksQ.Range("F35").Value
End With
End Sub

Anzeige
AW: Daten in ein anderes Tabellenblatt kopieren VBA
13.03.2017 18:36:16
mikey20333
Hi,
Anbei die neue Beispieldatei, könnt ihr mir da weiterhelfen wegen der summewenns funktion.
Warum werden die werte in der Registerkarte- Übersicht nicht
in der Zelle addiert sondern ich bekomme immer den wert 0 heraus.
https://www.herber.de/bbs/user/112155.xlsm
AW: Daten in ein anderes Tabellenblatt kopieren VBA
13.03.2017 20:36:25
mikey20333
hab die lösung wegen der formel glaub ich gefunden, wenn in der spalte liste in der spalte datum nur das datum ohne uhrzeit in derselben spalte steht funktioniert die formel nicht, wenn ich aber eine uhrzeit dazuschreibe funktioniert es wieder und er zählt.
nun habe ich das 2te problem, das ich nicht genau weiterweiß ob ich die summewenn abfrage ändern soll oder es einfacher wäre in Excel mit makro datum und uhrzeit in eine Zelle zu schreiben.
könnt ihr mir da weiterhelfen, danke im voraus
Anzeige
AW: Daten in ein anderes Tabellenblatt kopieren VBA
13.03.2017 21:45:44
mikey20333
hi, bin immer noch am selben problem es hat anscheinend mit der =summewenns und dem datumsformat zu tun
wenn ich die kalendereinträge manuell auf chinesisch / taiwan formatiere
bekomme ich die richtigen daten angezeigt, kann das stimmen?
AW: Daten in ein anderes Tabellenblatt kopieren VBA
15.03.2017 11:05:43
Werner
Hallo Mikey,
zwei Sachen:
1. Deine SUMMEWENNS-Formel ist falsch, achte auf die "Gänsefüsschen". Die Vergleichsoperatoren müssen in
Gänsefüsschen stehen.
=SUMMEWENNS(Liste!$E$10:$E$1048576;Liste!B$10:B$1048576;">="&$C$4;Liste!B$10:B$1048576;" 2. In deiner Tabelle "Liste" in Spalte B steht kein Datum sondern Text.
mit:

.Cells(.Count + i, 1).Value = Format(wksQ.Range("C4").Value, "dd.mm.yyyy")

übergibst du Text in die Zelle und kein Datum
Formatier deine Spalte B im Blatt "Liste" im Format Datum und übergib die Werte so:

.Cells(.Count + i, 1).Value = CDate(wksQ.Range("C4").Value)
Um bereits vorhandene Daten in Spalte B Tabelle "Liste" in Zahlenwerte umzuwandeln gehe bitte folgendermaßen vor:
Schreibe eine 1 in eine freie Zelle - kopiere diese Zelle - markiere den Bereich in Spalte B den du in Zahlenwerte umwandeln willst - Menü Start - klicke beim Icon oben links (Einfügen") den Pfeil - dann klicke ganz unten den Punkt "Inhalte einfügen.." - wähle Multiplizieren und dann ok. So werden deine "Textzahlen" in echte Zahlen umgewandelt. Jetzt noch die Spalte B im Format Datum formatieren und fertig.
Gruß Werner
Anzeige
AW: Daten in ein anderes Tabellenblatt kopieren VBA
15.03.2017 16:13:32
mikey20333
Hi,
super danke werde das gleich austesten, jedoch habe ich auch in der zwischenzeit das datumsformat geändert und was soll ich sagen es funktioniert, kannst du mir erklären warum, habe die formel und das datumsformat nur aus einer alten Datei übernommen. Bin ja VBA Anfänger und kenne mich noch nicht so
gut in der Materie aus.
anbei die neue Datei
https://www.herber.de/bbs/user/112211.xlsm

113 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige