Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Arbeiten mit zwei Arbeitsmappen





Frage

Hallo, mein Problem ist folgendes: Ich möchte in eine Zelle einen Wert eingeben und anschließend springt Excel zu diesem gefundenen Wert in einer anderen Arbeitsmappe. Ist dies überhaupt möglich? Beispiel: Kunden-Nr. wird bei einer Terminierung erfaßt und ich werde auf die Kundendaten in einer anderen Excel-Tabelle "weitergleitet", um hier weitere Daten erfassen zu können.

Antwort 1 von Nepumuk

Hi,
klar ist das möglich. Dazu aber ein paar Fragen:

  • Soll die andere Mappe, falls sie noch nicht geöffnet ist, geöffnet werden?
  • In welchem Bereich (Spalte / ab Zeile) gibst du die Kundennummer ein.
  • In welchem Bereich (Spalte / ab Zeile) befinden sich die Kundennummern in der Datei Kundendaten
  • Wie heißt die Tabelle mit den Nummern in der Datei Kundendaten und ist es nur, eine die durchsucht werden soll?
  • Heißt die Datei wirklich Kundendaten? Wo (Laufwerk\Odner\Unterordner...) ist sie gespeichert?
  • Soll eine Meldung ausgegeben werden, wenn eine Nummer nicht gefunden wurde?
  • Willst du diese Funktion aus und einschalten können?

    Eventuell tauchen noch weitere Fragen auf.
    Gruß
    Nepumuk

  • Antwort 2 von Giselle_Büntchen

    Hallo, Nepomuk,
    super, dass du mir helfen möchtest!

    Zu deinen Fragen:
    1. Wir gehen einfach davon aus, dass die andere Mappe bereits geöffnet ist.
    2. Es handelt sich um einen Terminkalender für verschiedene Außendienstleute, die unterschiedliche Arbeitszeiten haben. Ich möchte in diesen (ebenfalls in Excel erstellten) Terminkalender die Kundennummer eintragen und dann "weitergeleitet" werden, um weitere Daten in der Datei "Kundendaten" zu erfassen. D.h. genauer, hier möchte ich den Termin nochmals mit Uhrzeit und Ansprechpartner erfassen.
    Kurz: sagen wir Bereich B4:AZ15
    3. Die Kundennummern in meiner Arbeitsmappe "Kundendaten" stehen in Spalte 2, ab Zeile 2.
    4. siehe 3
    5. Laufwerk F, Ordner Kunden, Datei Kundendaten
    6. Das wäre natürlich prefekt.
    7. Wenn ich nach einer Fehlermeldund normal weiterarbeiten kann, muss man sie nicht ausschalten können.
    Es arbeiten mehrere Personen an dieser Datei, also muss die Eingabe so einfach wie möglich sein.

    Danke, danke, danke für deine Zeit!
    Gruß Giselle

    Antwort 3 von Nepumuk

    Hallo Giselle,
    Zitat:

    Kurz: sagen wir Bereich B4:AZ15

    Wenn du in diesem Bereich nur Kundennummern eingibst ist es kein Problem. Aber, wenn du in diesem Bereich auch andere Daten eingibst, dann haben wir eines. Wie soll das Programm erkennen, was eine Kundennummer ist und was nicht?
    Gruß
    Nepumuk



    Antwort 4 von Giselle_Büntchen

    Hallo, sorry Nepuuuuumuk,
    gebe hier nur Kundennummern ein !

    Gruß
    Gieselle


    Antwort 5 von help

    der beste weg wäre, vba. beschreib mir einfach mal dein problem genauer, mal sehen was sich machen lässt. dlp132@compuserve.de

    Antwort 6 von Nepumuk

    Hallo Giselle,
    in deiner Eingabetabelle, Rechtsklick auf den Tabellenreiter - Code anzeigen. In das sich öffnende Editorfenster folgenden Code kopieren:

    
    Option Explicit
    
    Dim bolLetClosed As Boolean
    
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim myWorkbook As Workbook, myRange As Range
        If Target.Count = 1 And Not Intersect(Target, Range("A4:AZ15")) Is Nothing Then
            If Trim(Target.Value) <> "" Then
                On Error Resume Next
                Set myWorkbook = Workbooks("Kundendaten.xls")
                If Err.Number <> 0 And Not bolLetClosed Then
                    If MsgBox("Die Datei ''Kundendaten'' ist nicht geöffnet." & vbLf & String(10, " ") & "Soll sie jetzt geöffnet werden?", 36, "Abfrage") = 6 Then
                        Err.Clear
                        Set myWorkbook = Workbooks.Open(Filename:="F:\Kunden\Kundendaten.xls")
                    Else
                        bolLetClosed = True
                    End If
                End If
                If Err.Number = 0 Then
                    On Error GoTo 0
                    Set myRange = myWorkbook.Worksheets("Kundendaten").Columns(2).Find(What:=Trim(Target.Value), LookIn:=xlValues, LookAt:=xlWhole)
                    If myRange Is Nothing Then
                        MsgBox "Diese Kundennummer ist nicht in der Datei ''Kundendaten''.", 48, "Hinweis"
                    Else
                        myWorkbook.Activate
                        Worksheets("Kundendaten").Activate
                        myRange.Activate
                        Set myRange = Nothing
                        Set myWorkbook = Nothing
                    End If
                End If
            End If
        End If
    End Sub
    

    Das Fenster mit der Tastenkombination Alt+q wieder schließen. Das war's.
    Gruß
    Nepumuk (Maximilian Günther Nepumuk um genau zu sein) :-)

    Ich möchte kostenlos eine Frage an die Mitglieder stellen:


    Ähnliche Themen:


    Suche in allen vorhandenen Beiträgen: