Das Clever-Excel-Forum.de - Treffen
... 14.-16. September 2018 im Allgäu ...

Einpflegen von Daten und automatische Listung
#1
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.

?mage

Danke für eure Hilfe

LG Andreas_Neuling
to top
#2
Moin,

schau mal hier unter der Überschrift Datenmaske.
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
to top
#3
Mjhhhhhh

komme damit nicht klar, gibt es andere Ideen?
to top
#4
Hi,

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

?mage

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

?mage

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.
Gruß Günter
Misserfolg ist eine Chance, es beim nächsten Mal besser zu machen.
(Henry Ford) http://www.sprueche-zum-nachdenken.eu
to top
#5
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

.xlsb   Kunde übertragen.xlsb (Größe: 25,39 KB / Downloads: 3)
Gruß Ralf

?mage

Die deutsche Rechtschreibung ist Freeware, d.h. du kannst sie kostenlos nutzen.
Allerdings ist sie nicht Open Source, deswegen darfst du sie nicht verändern oder in veränderter Form veröffentlichen.
to top
#6
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
to top
#7
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
to top


Gehe zu:


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