Clever-Excel-Forum

Normale Version: Blatt-Name verwenden um Daten anzuzeigen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Ihr Lieben, 
 
Es gibt eine Teilnehmerliste mit Kd-Nr.  , Vorname, Nachname  in einer Registerkarte:  TN_Name
Beispiel:   in Registerkarte TN_Name
10010    Anton   Meier
10020    Berta     Müller
10030    Claudia Huber
 
 
Dann gibt es  pro Kd-Nr.  eine Registerkarte mit weiteren Daten wie Strasse, PLZ, Ort usw
Beispiele Registerkarten Name
TN_Adr_10010
TN_Adr_10020
TN_Adr_10030
 
In der jeweiligen Registerkarte ist die Kd-Nr.  in Spalte A,  A6,   in Zeile 6 sind die dazugehörigen Daten wie Str, PLZ, Ort, TelNr.  Usw..
 
Es geht darum die Datensätze der einzelnen  Registerkarten in 1 Registerkarte zur Verfügung zu haben .
 
Entweder alle kopieren in 1 Registerkarte, danach kann es via Sverweis in die TN_Name geholt werden.
Oder: gleich von den einzelnen Registerkarten in die TN_Name „holen“
 
Was einfacher ist fein
 
Es sind ca. 80 Registerkarten
 
 
 
Im 2. Schritt gibt es pro Kunde eine Registerkarte in welcher Vertragsnr  enthalten sind:

Beispiel für Name Registerkarte  Ids_Kundennummer
Ids_10010: 
Ids_10020
Ids_10030
 
 
Beispiel für Datensätze in dieser Tabelle:
 
KdNr.    VN         Nachn                  Vt_Nr   Wert
10010    Anton   Meier                   1234      250
10010    Anton   Meier                   5678      500

In Ids_10020:
10020    Berta     Müller                  8234      1000
 
In Ids_10030
10030    Claudia Huber                   2345      1000
10030    Claudia Huber                   7890      500
 
 
Diese sind alle in 1 Registerkarte zu kopieren bzw. zu holen
 
HERZlichen DANK.
 
LIEBE
Claudia
eine Beispieldatei wäre hilfreich
Datei im Anhang
Hallo Claudia,

warum, um alles in der Welt, muss man täglich darauf hinweisen, dass gleichartige Daten auf ein Tabellenblatt gehören?
Teste mal mit

Code:
Sub F_en()
Dim Sht As Worksheet
Dim TN As Worksheet: Set TN = Sheets("TN_Name")
Dim RNG As Range
Dim ZL As Range

For Each Sht In Sheets
    If InStr(1, Sht.Name, "TN_Adr") > 0 Then
        Kd = Split(Sht.Name, "_")(2)
        Set RNG = Sht.Columns(1).Find(Kd, , xlValues, xlWhole)
        If Not RNG Is Nothing Then
            Set RNG = Sht.Range(RNG.Offset(, 3), RNG.Offset(, 11))
            
            Set ZL = TN.Columns(1).Find(Kd, , xlValues, xlWhole)
            If Not ZL Is Nothing Then RNG.Copy ZL.Offset(, 8)
        End If
    End If
Next Sht
Set TN = Nothing
End Sub
Herzlichen DANK lieber Fennek,
hier eine Meldung
[
Bild bitte so als Datei hochladen: Klick mich!
]


Bild zeigt: 
    If InStr(1, Sht.Name, "TN_Adr") > 0 Then

Fehler beim Kompilieren, Syntaxfehler



Ehrlicherweise kenn ich mich mit VBA nicht aus. Ich kann es erahnen, aber es ist nicht so, dass ich es entsprechend anpassen könnte. 

Gibt es eine Lösung mit Formeln?

Sonst sehen wir dass wir es so hinbekommen. 


HERZlichen DANK.

LIEBE
Claudia
Hallo,

für eine Formellösung könntest du mit "Indirekt" und "Sverweis" arbeiten.

beispiel für die Spalte Ansprechpartner:


TN_Name
ABCDEF
4KdNr.VornameName_KurzNameTgVon_Ansprechpartner
510010AmeliaAAmmonjk.A.
610020AndreasSSteinhardjk.A.
710040AnjaRRichterjDietmar
810045BertaRRichternk.A.
910070BarbaraHHocheisenjDietmar
1010080BettinaMMüllerjDietmar

verwendete Formeln
Zelle Formel Bereich N/A
C5:C7,C9:C10=LINKS(D5;1)
F5:F10=WENNFEHLER(SVERWEIS(A5;INDIREKT("TN_Adr_"&A5&"!$A$6:$M$15");13;0);"k.A.")
http://excel-inn.de/dateien/vba_beispiel..._addin.zip
http://Hajo-Excel.de/tools.htm
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
Add-In-Version 25.21 einschl. 64 Bit

Zitat:Bild zeigt:
If InStr(1, Sht.Name, "TN_Adr") > 0 Then

Fehler beim Kompilieren, Syntaxfehler

So einfach ist es nicht:

Die Syntax ist korrekt und lief unter Excel 2016.

Welches Programm nutzt Du?

- Excel Version
- LibreOffice

Es ist eine interessante Fehlersuche.
Lieber Cadmus,
sehr gute Idee. Vielen DANK.

natürlich bringt er bei der KdNr. 100045  die Daten nicht weil diese beim Tabellenblatt 100040 mit drin stehen. 

Wie ist es wenn nur der Anfang der Tabellenbläter TN_Adr_ und egal was danach kommt er die Kundennummer finden soll. 




In I5  für die Email, steht folgendes: 

=WENNFEHLER(SVERWEIS($A5;INDIREKT("TN_Adr_"&$A5&"!$A$6:$M$15");SPALTE(D1);0);"k.A.")



Was ist statt  &$A5&"  einzugeben?  * funktioniert nicht.

Vielen DANK.


LIEBE
Claudia
Hallo


Oder eine Alternative ohne VBA.
Seiten: 1 2 3