Excel: Wert wiederholen bei Eingabe?

Beispiel - (Formel, Microsoft Excel)

4 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Hallo,

die Ausführung mit der separeten Tabelle und dann per Sverweis die Zahl ziehen ist so schon richtig.

Eine andere sinnvolle Methode wäre, die Werte per Makro automatisch auszufüllen. Aber auch hier musst du vorab die Tabelle definieren, nur eben in VBA. Kommt ein neuer möglicher Wert hinzu, muss das Makro angepasst werden. Da sehe ich den Aufwand in der ersten Variante deutlich niedriger.

Theoretisch könntest du den Sverweis auch in der gleichen Tabelle machen, dann muss das Erstvorkommen des entsprechenden Argumentes aber auf einen bestimmten Teilbereich begrenzt sein. Das wäre im Endeffekt auch nichts anderes als eine seperate Tabelle, nur innerhalb der eigentlichen Tabelle, was die ganze Sache imho noch komplizierter macht...

LG, Chris


privilege11 
Beitragsersteller
 02.09.2016, 23:07

Verstanden, also doch zweite Tabelle und mit SVerweis. Ich hoffe, ich bekomme das hin.

Vielen Dank!

Funfroc  05.09.2016, 09:18
@privilege11

Hallo,

sverweis ist eigentlich nicht so schwer, wobei es natürlich immer auf die schon vorhandenen Kenntnisse ankommt.

Schau mal hier: http://www.excellernen.de/excel-sverweis/

Wichtig ist halt zu verstehen, wie die Formel aufgebaut sein muss, also die Syntax zu verinnerlichen.

LG, Chris

Interessante Frage. So wie du es willst ist es mir nach ersten Überlegungen nicht möglich. Es wäre jedoch möglich mittels einer zweiten Liste all eindeutigen Attribute aus der Spalte A in einen seperaten Bereich zu legen (neue Tabelle) und dann den Wert jedes Attirbutes daneben, in der Form:

Spalte X                   | Spalte Y

Nickel                       | 20

Insulating Membran | 30

...

Für die Spalte C machst du nun einen Sverweis auf Spalte A und der neuen Tabelle, dann solltest du das Ergebnis haben. Jedoch musst du die Werte für die Spalte C dann entsprechend in Spalte Y eintragen.


privilege11 
Beitragsersteller
 01.09.2016, 08:57

Das war auch meine erste Überlegung, allerdings wollte ich gerade das Arbeiten in einer zweiten Tabelle vermeiden. Sollte ich keine Möglichkeit finden, werde ich deine Lösung jedenfalls wieder aufgreifen.

Hab vielen Dank!

Wenn das keine einmalige Sache sein soll, lässt es sich imho nur per VBA lösen. Falls Du Dich daran traust, teste das mal in einer Sicherheitskopie ausführlich:

Mache einen Rechtsklick auf den Tabellenreiter (unten, da wo z.B. Tabelle1 steht) und gehe dann auf "Code anzeigen...".
In das große Fenster des VBA-Editors, der sich dann öffnet kopierst Du folgenden Code:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 And Target.Count = 1 Then
On Error GoTo ErrorHandler
Application.EnableEvents = False
Dim Zelle As Range
Dim Name As String
Name = Target.Offset(0, -2).Value
For Each Zelle In Range(Cells(1, 3), Cells(Rows.Count, 3).End(xlUp))
If Zelle.Offset(0, -2).Value = Name Then Zelle.Value = Target.Value
Next Zelle
ErrorHandler: Application.EnableEvents = True
End If
End Sub

Die Datei musst Du danach aber als .xlsm speichern, und Makros zulassen.

Hilft Dir das? Habe ich es richtig verstanden?

Woher ich das weiß:Berufserfahrung – IT-Administrator (i.R.)

privilege11 
Beitragsersteller
 02.09.2016, 23:04

Also ich habe es genau so gemacht, wie du beschrieben hast. Leider funktioniert es nicht. Es werden überhaupt keine Werte übernommen (außer natürlich in der Zelle, in die ich eintrage).

Du hast dir schon sehr viel Mühe gegeben und ich will dich nicht überbeanspruchen. Ich bin daher geneigt mit dem SVerweis zu arbeiten.

Vielen Dank!

=Wenn($A$2=A3;$C$2;"irgendwas anderes")

Formel in C3 schreiben und runterziehen

privilege11 
Beitragsersteller
 01.09.2016, 09:00

Ich glaube in dem Fall prüft er aber nur die Zeile, die jeweils unter der Formel steht, oder? Aber er müsste für jede Zelle in der Spalte C die gesamte Tabelle prüfen.

azmd108  01.09.2016, 09:11
@privilege11

So wie ich es verstanden habe, willst du immer wenn in Spalte A der Wert steht wie in Spalte A2, auch den Wert an diese Stelle von C2 übertragen, richtig?

Also wenn in A2 Nicke steht und in A10 auch Nickel, willst du in C10 den Wert aus C2 haben, oder irre ich?

Funfroc  01.09.2016, 10:29
@azmd108

für einen einmaligen Wert funktioniert deine Formel.

Er will es aber natürlich für jeden Wert, der Mehrfach vorkommt, ab dem 2. Vorkommen, den Wert des ersten Vorkommens haben.

Das geht mit deiner Formel natürlich nicht.

azmd108  01.09.2016, 18:30
@Funfroc

ah verstehe, nagut, in dem Falle einfach die Formel über weitere Wenn-Formeln erweitern