Clever-Excel-Forum

Normale Version: Einpflegen von Daten und automatische Listung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo an alle..

ich habe mal wieder eine Frage und bin zuversichtlich, dass ihr die lösen könnt:

Ich baue mir gerade in Excel eine Datenbank auf. Hier würde ich gerne stets einige Daten in vorgefertigte Felder händisch eintragen.
Ziel soll es sein, dass diese eingetragenen Daten automatisch in eine vornummerierte Liste eingepflegt.

Wie in diesem Beispiel:
Bei grün wird händisch eingetragen und bei gelb sollten die eingetragenen Daten erscheinen.
In diesem Fall unter Nr. 1 Projekt: Kita1, Name: Mustermann, Vorname: Max
Dann ist die Eingabe abgeschlossen.
Dann würde ich gerne neue Daten bei grün eintragen und diese sollten dann auf die Nr. 2 gesetzt werden.

[
Bild bitte so als Datei hochladen: Klick mich!
]

Danke für eure Hilfe

LG Andreas_Neuling
Moin,

schau mal hier unter der Überschrift Datenmaske.
Mjhhhhhh

komme damit nicht klar, gibt es andere Ideen?
Hi,

du müsstest deine Tabelle etwas anders aufbauen - siehe Bild. Darin habe ich auch schon die Datenmaske mit dem 2. Eintrag gefüllt.

[
Bild bitte so als Datei hochladen: Klick mich!
]

Nach Klick auf Schließen siehst du dann den erfolgten Eintrag in deine Tabelle

[
Bild bitte so als Datei hochladen: Klick mich!
]

Die Datenmaske holst du dir über Menüband anpassen==> links Befehle auswählen: Alle Befehle==> Maske suchen und diese in eine bestehende oder neue Gruppe einfügen.
Hi Andreas,

(19.02.2016, 11:19)andreas_neuling schrieb: [ -> ]Ich baue mir gerade in Excel eine Datenbank auf. Hier würde ich gerne stets einige Daten in vorgefertigte Felder händisch eintragen.
Ziel soll es sein, dass diese eingetragenen Daten automatisch in eine vornummerierte Liste eingepflegt.

so?
Sub Kunde_eintragen()
'
' Kunde_eintragen Makro
'
Dim loLetzte As Long
'

   loLetzte = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row                  ' letzte belegte in Spalte B (2)

   Range("B1").Copy
   Range("B" & loLetzte + 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
   
   Range("B3").Copy
   Range("C" & loLetzte + 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
   Range("B5").Copy
   Range("D" & loLetzte + 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
   Application.CutCopyMode = False
End Sub
[attachment=4268]
Hallo!
Warum so kompliziert (und praxisfern) (gilt dem Andreas)?
- A1: Nr., B1: Projekt, C1: Name, D1: Vorname
- in A2: =Zeile(A1)
- A2 markieren, Einfügen, Tabelle

Jetzt kannst Du Deine Projekte eingeben, Fortbewegung mittels Tab.
Dadurch wird automatisch eine neue Zeile eingefügt und die Nr. wird hochgezählt.

ABCD
1Nr.ProjektNameVorname
21aName1VN1
32
Formeln der Tabelle
ZelleFormel
A2=ZEILE(A1)
A3=ZEILE(A2)

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8

Gruß Ralf
Hallo Andreas,

so ginge es per VBA automatisch bei Eingabe:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngE As Range
Dim varE(1 To 3) As Variant

Set rngE = Range("B1,B3,B5")
If Not Application.Intersect(Target, rngE) Is Nothing Then
On Error Resume Next
Application.EnableEvents = False
varE(1) = rngE.Areas(1).Value
varE(2) = rngE.Areas(2).Value
varE(3) = rngE.Areas(3).Value
If Len(varE(1)) * Len(varE(2)) * Len(varE(3)) Then
With Range(Cells(9, 1), Cells(Rows.Count, 1).End(xlUp))
.Offset(.Rows.Count, 0).Cells(1).Value = Application.Max(.Columns(1)) + 1
.Offset(.Rows.Count, 1).Cells(1).Value = varE(1)
.Offset(.Rows.Count, 2).Cells(1).Value = varE(2)
.Offset(.Rows.Count, 3).Cells(1).Value = varE(3)
End With
rngE = ""
rngE.Areas(1).Select
End If
Application.EnableEvents = True
On Error GoTo 0
End If
End Sub
Der Code kommt in das schon vorhandene VBA-Modul der entsprechenden Tabelle.

Gruß Uwe