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

Ausgabe von Tabellenwerten durch Zeileneingabe

Ausgabe von Tabellenwerten durch Zeileneingabe
30.10.2014 10:36:40
Tabellenwerten
Hallo!
Ich habe folgendes Problem: Ich bräuchte einen VBA Code, der mir durch die Eingabe von einer Zeilen Range den Inhalt der Zeilen der Tabelle ausgibt. In diesem Beispiel habe ich in Tabelle 1 Spalte A verschiedene Werte. Wenn ich in Tabelle 2 nun in das gelb markierte Feld 1-4 eingebe soll Excel die Zeilen 1-4 der Spalte A in Tabelle 2 darunter ausgeben. Gibt es da eine Möglichkeit? Anbei eine Musterdatei - vielen Dank im Voraus!
https://www.herber.de/bbs/user/93458.xlsx
Beste Grüße
Sascha

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ausgabe von Tabellenwerten durch Zeileneingabe
30.10.2014 11:18:28
Tabellenwerten
Hallo Sascha,
grundsätzlich funktioniert es.
Allerdings solltest du die beiden Zeilenwerte in separate Zellen schreiben.
Bei einer Formel-Lösung könnte man für die nicht anzuzeigenden Zeilen einen Leerstring ausgeben.
Alternativ könnte man per Makro den Zellen-/Zeilenbereich von Tabelle1 nach Tabelle2 kopieren.
Formellösung:
Zeile:	1
4
Ausgabe:
Lutz
Max
Kurt
Dieter

Formel in A5:
=WENN(($B$1+ZEILE(A5)-5)>$B$2;""; INDEX(Tabelle1!A:A;$B$1+ZEILE(A5)-5))

Diese Formel dann nach unten kopieren.
Makrolösung, die auf Eingaben in die Zellen B1 und B2 reagiert:
'Erstellt unter Excel 2010
'Makro im VBA-Editor unter Tabellenblatt "Tabelle2"
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zeile As Long
Select Case Target.Address(False, False, xlA1)
Case "B1", "B2"
If IsNumeric(Range("B1")) And IsNumeric(Range("B2")) Then
If Range("B1") >= 1 And Range("B2") >= Range("B1") Then
Application.EnableEvents = False
'Altwerte löschen
Zeile = Cells(Rows.Count, 1).End(xlUp).Row
If Zeile >= 5 Then
Range(Cells(5, 1), Cells(Zeile, 1)).ClearContents
End If
With Worksheets("Tabelle1")
.Range(.Cells(Range("B1"), 1), .Cells(Range("B2"), 1)).Copy Destination:=Cells(5,  _
1)
End With
Application.EnableEvents = True
End If
Else
MsgBox "In Zellen B1 und B2 dürfen nur Zahlenwerte eingegebn werden"
End If
Case Else
'do nothing
End Select
End Sub
Gruß
Franz

Anzeige
AW: Ausgabe von Tabellenwerten durch Zeileneingabe
30.10.2014 12:01:38
Tabellenwerten
Hallo Franz, vielen Dank schon mal, die Formel funktioniert wunderbar.
Leider funktioniert die VBA-Lösung bei mir nicht - gebe ich etwas in Zelle B1 und B2 in Tabellenblatt 2 ein passiert nichts - hast du eine Idee warum?
Vielen Dank nochmals
Beste Grüße
Sascha

AW: Ausgabe von Tabellenwerten durch Zeileneingabe
30.10.2014 12:14:09
Tabellenwerten
Hallo Sascha,
hast du das Makro im VBA-Editor an der richtigen Position eingefügt?
Es muss unter Tabelle2 eingefügt sein!
Nach Rechte-Maus-Klick auf das Blattregister-Tab und "Code anzeigen" muss der Code in dem entsprechenden Editorfenster angezeigt werden.
Sind in deiner Excel-Anwendung unter Optionen Makros zugelassen? ggf. Optionen anpassen, so dass Makros ggf. nach Rückfrage beim Öffnen der Datei freigegegeben werden oder Datei in einem vertrauenswürdigen Verzeichnis speichern.
Sind die Makros für die Datei aktiv? ggf. Datei speichern/schließen und neu öffnen.
Gruß
Franz
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige