Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Aus anderer offenen (!) Tabelle kopieren

Aus anderer offenen (!) Tabelle kopieren
30.10.2017 17:52:44
Barbaraa
Hallo
Ich würde gerne ein Makro schreiben, das den Wert aus A1 des Blatts "Tabelle1" einer nebenbei geöffneten Datei in B2 des eigenen Sheet schreibt.
es sind also zwei oder mehrere Tabellen offen. Die eine, in der das Makro steht hat einen Button, mit den das Makro aufgerufen wird.
Doch wie legt der Anwender die andere Datei fest, von der kopiert wird? Vielleicht, wenn er vorher den Namen in eine Zelle schreibt? Das wäre sicher zumutbar. Es soll aber keine Datei öffnen, falls er sich verschrieben hat.
Wie sieht dann das Makro aus?
LG, Barbara
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aus anderer offenen (!) Tabelle kopieren
30.10.2017 18:20:53
Sepp
Hallo Barbara,
ich würde ein kleines Formular erstellen mit einer List-, oder Combo-box in der alle geöffneten Mappen, außer der in der das Makro steht aufgelistet werden. Dort soll der User dann die Quellmappe wählen.
Gruß Sepp

Anzeige
AW: Aus anderer offenen (!) Tabelle kopieren
30.10.2017 18:29:55
ChrisL
Hi Barbara
Mappe = Datei
Tabelle = Tabellenblatt
Blatt = Blatt (z.B. Tabellenblatt oder Diagrammblatt)
Sauber wäre, wenn du die zweite Datei bereits beim Öffnen in eine Objektvariable übergibst (eigener Dialog mit GetOpenFileName).
Wenn Variante A nicht geht, dann wäre eine Usereingabe des Dateinamens möglich. Ob in Zelle A1, InputBox, Textfeld etc. ist grundsätzlich egal.
Oder du schreibst dir eine eigene Auswahl (wie Sepp vorschlägt). Ansatz (Userform und ListBox):
Sub ListAlle()
Dim Wb As Workbook
For Each Wb In Workbooks
If Wb.Name  ThisWorkbook.Name Then
ListBox1.AddItem Wb.Name
End If
Next Wb
End Sub
Oder du nimmst die zufällig als erstes gefundene Mappe und verlässt die Schleife mit Exit-For.
Funktioniert aber nur, wenn die Mappen in der gleichen Excel-Instanz (Applikation ist nur einmal offen) geöffnet wurde.
cu
Chris
Anzeige
AW: Aus anderer offenen (!) Tabelle kopieren
30.10.2017 18:38:56
fkw48

Sub TestIt()
With ThisWorkbook
With ActiveSheet.Range("B2")
.Value = DoIt("Tabelle1", "A1", .Value)
End With
End With
End Sub
Private Function DoIt(sSheet As Variant, sAddr As String, V As Variant) As Variant
Dim w As Long, i As Long
Dim strInp As String
Dim oWb As Workbook
On Error GoTo fail
DoIt = V
w = Workbooks.Count
If w > 2 Then
For i = 1 To w
If Workbooks(i).Name  ThisWorkbook.Name Then
strInp = strInp & CStr(i) & " = " & Workbooks(i).Name & vbNewLine
End If
Next i
strInp = InputBox(strInp, "Mehrfachauswahl mit Ziffer treffen")
Set oWb = Workbooks(CInt(strInp))
Else
Set oWb = Workbooks(1)
If oWb.Name = ThisWorkbook.Name Then Set oWb = Workbooks(2)
End If
DoIt = oWb.Sheets(sSheet).Range(sAddr).Value
fail:
End Function
die andere Datei fest = für mich mehrere Arbeitsmappen, denn
zwei oder mehrere Tabellen offen = unerheblich
Anzeige
AW: Aus anderer offenen (!) Tabelle kopieren
31.10.2017 20:30:37
Barbaraa
Hi
Vielen Dank allen. habe Eure Skrips durchprobiert und mein Horizont hat sich etwas erweitert.
Danke für Eure Mühe.
LG, Barbara
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige