Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1032to1036
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
Daten kopieren
14.12.2008 21:00:00
Jürgen
Hallo Leute,
ich benötige eure Hilfe.
Von einem Datenblatt (Tabelle1) sollen Daten in die "Auswertung" kopiert werden (Button).
Die Daten sollen jedesmal in der Tabelle angefügt werden.
Über jedem "Datensatz" soll das Datum stehen.
Wie bekomme ich die Daten immer eine Zelle weiter?
Die Daten können mehrfach am Tag gespeichert werden.
Doppelte Einträge vermeiden - Daten nach kopieren löschen (blaue Felder)?
Vielen Dank
Jürgen
https://www.herber.de/bbs/user/57617.xls

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten kopieren
14.12.2008 21:52:50
Tino
Hallo,
teste mal diesen Code.
Sub speichern()
Dim varCol

With Tabelle2
 varCol = Application.Match(CDbl(Date), .Rows(1), 0)
    If Not IsNumeric(varCol) Then
     varCol = .Cells(1, .Columns.Count).End(xlToLeft).Row + 1
    End If

 .Cells(1, varCol) = Date
 .Range(.Cells(2, varCol), .Cells(5, varCol)).Value = Tabelle1.Range("F30:F33").Value

End With

With Tabelle1
 .Range("B8:B20,F7:F16,B25:B32,F27").ClearContents
End With

End Sub


Gruß Tino

Anzeige
Fehler, Korrektur
14.12.2008 21:55:52
Tino
so ist es besser!!
Sub speichern()
Dim varCol

With Tabelle2
 varCol = Application.Match(CDbl(Date), .Rows(1), 0)
    If Not IsNumeric(varCol) Then
     varCol = .Cells(1, .Columns.Count).End(xlToLeft).Column + 1
    End If

 .Cells(1, varCol) = Date
 .Range(.Cells(2, varCol), .Cells(5, varCol)).Value = Tabelle1.Range("F30:F33").Value

End With

With Tabelle1
 .Range("B8:B20,F7:F16,B25:B32,F27").ClearContents
End With

End Sub


Anzeige
AW: Fehler, Korrektur
14.12.2008 22:21:30
Jürgen
Danke Tino,
schon ganz gut.
Leider werden die Daten immer überschrieben, statt angefügt zu werden.
erster Satz in B, zweiter in C usw.
Danke
Jürgen
AW: Fehler, Korrektur
14.12.2008 23:03:00
Tino
Hallo,
Du hattest geschrieben
Doppelte Einträge vermeiden
Also bin ich davon ausgegangen jeden Tag eins.
Sub speichern()
Dim varCol

With Tabelle2
varCol = .Cells(1, .Columns.Count).End(xlToLeft).Column + 1
 .Cells(1, varCol) = Date
 .Range(.Cells(2, varCol), .Cells(5, varCol)).Value = Tabelle1.Range("F30:F33").Value

End With

With Tabelle1
 .Range("B8:B20,F7:F16,B25:B32,F27").ClearContents
End With

End Sub


Gruß Tino

Anzeige
AW: Fehler, Korrektur
15.12.2008 00:07:00
Jürgen
Hall tino,
wiso kommt jetzt immer die Meldung "Keine Werte eingetragen!" auch wenn Daten in F27 und F33 stehen.
Die Box habe ich hinzugefügt.
Wenn nix eingetragen ist, soll nicht gespeichert werden.
- Doppelte Einträge werden durch das Löschen der Daten verhindert. -
Danke
Jürgen

Sub speichern()
Dim varCol
With Tabelle2
If (Cells(6, 27) = "" And Cells(6, 33) = "") Then
MsgBox "Keine Werte eingetragen!"
Exit Sub
End If
varCol = .Cells(1, .Columns.Count).End(xlToLeft).Column + 1
.Cells(1, varCol) = Date
.Range(.Cells(2, varCol), .Cells(8, varCol)).Value = Tabelle1.Range("F27:F33").Value
End With
With Tabelle1
.Range("B8:B20,F7:F16,B25:B32,F27").ClearContents
End With
End Sub


Anzeige
AW: Fehler, Korrektur
15.12.2008 00:18:00
Tino
Hallo,
Du hast Row (Zeile) und Column (Spalte) vertauscht. ;-)
Arbeite in diesem Fall lieber mit Range, ist verständlicher und leichter nachzuvollziehen.
Gruß Tino
AW: Fehler, Korrektur
15.12.2008 03:25:27
Jürgen
Danke!
Kaum macht mann es richtig, funktioniert es auch!
Jürgen

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige