Anzeige
Archiv - Navigation
556to560
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
556to560
556to560
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Experten! Range aus geschlossener Mappe auslesen?

Experten! Range aus geschlossener Mappe auslesen?
28.01.2005 15:44:59
Matthias
Hallo Herberaner,
Ich weiß, ich weiß!
Hier gibt's etliche Forunmsaeinträge mit der
ExecuteExcel4Macro-Methode und dem direkten
Zellbezug...
...Aber, ich suche verzweifelt nach einer Methode
auf benannte Bereiche der geschlossenen Mappe
zuzugreifen. Ich weiß ja zum Teil nicht welche Zellen
ich ansprechen muß, deshalb wäre der Zugriff über den
Bereichsnamen unumgänglich. Oder ist die Excel4-Methode
wirklich nur für Einzelzellen, die inkrementell durchlaufen
werden müssen?
Merci vielmals,
Gruß aus Daimler-Town!
Matthias

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Experten! Range aus geschlossener Mappe auslesen?
28.01.2005 15:55:41
Bernd
Du suchst also eine Möglichkeit ein geschlossene Mappe auszulesen?
AW: Experten! Range aus geschlossener Mappe auslesen?
28.01.2005 16:04:20
Matthias
Hallo Bernd!
::Du suchst also eine Möglichkeit ein geschlossene Mappe auszulesen?
Nicht die Mappe sondern benannte Beriche in den Sheets der Mappe.
Mit
ActiveSheet.Range("A1") = ExecuteExcel4Macro("'C:\Temp\[Test.xls]D10'!R4C2")
kann ich die Zelle(4,2) auslesen, wenn ich nun aber das benannte Range "Messwerte"
auslesen will, hab ich da ein Problem. Die Mappe wird online aktualisiert und
sollte nicht geöffnet werden.
Any idea?
matthias
AW: Experten! Range aus geschlossener Mappe auslesen?
28.01.2005 16:09:50
Bernd
Ich verwende sowas auch, du musst es dir nur noch anpassen da bei mir complett
Spalte A ausgelesen wird.

Sub Spalte_A_Auslesen()
Dim rng As Range
Dim arr As Variant
Dim iCounter As Integer, iRow As Integer, iAct As Integer
Dim sPath As String, sFormula As String, sTmp As String
Application.ScreenUpdating = False
sPath = Range("B1").Value
arr = FileArray(sPath, "*.xls")
For iCounter = 1 To UBound(arr)
If FileDateTime(sPath & arr(iCounter)) <= Date + 1 Then
With Worksheets("Import")
If IsEmpty(.Cells(1, 1)) Then
Set rng = .Range("A1")
Else
Set rng = .Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
End If
End With
rng.Value = sPath & arr(iCounter)
sFormula = "='"
sFormula = sFormula & sPath & "["
sFormula = sFormula & arr(iCounter) & "]"
sFormula = sFormula & "Tabelle1'!"
sTmp = Right(sFormula, Len(sFormula) - 1)
sFormula = sFormula & "A1"
rng.Offset(0, 1).Formula = sFormula
rng.Offset(0, 2).Formula = "=counta(" & sTmp & "A:A)"
iRow = rng.Offset(0, 2).Value
If iRow > 0 Then
rng.Offset(0, 2).Formula = "=" & sTmp & "A" & iRow
Else
rng.Offset(0, 2).ClearContents
End If
End If
Next iCounter
With Worksheets("Import").Range("A1").CurrentRegion
.Value = .Value
End With
End Sub


Function FileArray(sPath As String, sPattern As String)
Dim arr()
Dim iCounter As Integer
Dim sFile As String
If Right(sPath, 1) <> "\" Then sPath = sPath & "\"
sFile = Dir(sPath & sPattern)
Do While sFile <> ""
iCounter = iCounter + 1
ReDim Preserve arr(1 To iCounter)
arr(iCounter) = sFile
sFile = Dir()
Loop
FileArray = arr
End Function

Anzeige
AW: Experten! Range aus geschlossener Mappe auslesen?
28.01.2005 16:32:55
Matthias
Hallo Bernd,
Danke für Dein Listing.
Bricht bei mir mit LZF 9 "Index außerhalb des gültigen Bereichs"
bei With Worksheets("Import") ab. Er hat ja keinen Bezug zu
einem Workbook wenn ich nur das Worksheet("Import") angebe.
Wie sprech ich das denn an?
matthias
AW: Experten! Range aus geschlossener Mappe ausles
Reinhard
Hi Matthias,
habe jetzt den Code nichht angeschaut, also musst du das noch anpassen
probiers mal so:
With workbooks("Dateiname").Worksheets("Import")
oder
With thisworkbook.Worksheets("Import")
je nach Fall.
Gruß
Reinhard
AW: Experten! Range aus geschlossener Mappe ausles
Matthias
Oh jeh!
Freitag nachmittag!
Wo bleibt meine Konzentration?
"Import" heißt das Sheet uim ActiveWorkbook,
in das die Daten eingefügt werden sollen...
Nun gibt er mir aber in A1 den Pfad und Dateinamen
in Spalte B1 (Import) die erste Zelle A1 (Daten) und
in Spalte C1 (Import) die zwanzigste Zelle A20 (Daten) an.
What's wrong?
matthias
Anzeige
AW: Experten! Range aus geschlossener Mappe ausles
Matthias
Also nochmal langsam zum mitmeißeln:
'Hier schreibt er in B1 (IMP) den Wert von A1 (DATA) rein
sFormula = sFormula & "A1"
rng.Offset(0, 1).Formula = sFormula
'Dann schreibt er in C1 (IMP) die Anzahl der Werte in A:A (DATA) ein
rng.Offset(0, 2).Formula = "=counta(" & sTmp & "A:A)"
'Und dann schreibt er das in eine Zählvariable,
die aber nie inkrementiert wird und bricht nach ersten durchlauf ab
iRow = rng.Offset(0, 2).Value
Und nun?
matthias
Freitags ab Eins macht jeder seins...
Ist der Chef nicht zu sehen, gehn se schon um 10 :)
Funktioniert nicht! Range aus geschl. Mappe
Matthias
Aloa! Um Antwort wird gebeten...
merci
matthias
Anzeige
Benannter Range aus geschlossener Mappe
Matthias
Hallo Herberaner,
jetzt bekommt der so ein tolles Listing (Danke Bernd!)
und ist immer noch nicht zufrieden.
Ich muss nochmal betonen, das ich BENANNTE Bereiche
aus einer geschlossenen Arbeitsmappe auslesen will.
SchöWE!
Matthias
AW: Benannter Range aus geschlossener Mappe
29.01.2005 16:49:20
Björn
Hallo Matthias,
versuch's doch mal mit
ActiveSheet.Range("A1") = ExecuteExcel4Macro("'C:\Temp\[Test.xls]D10'!Messwerte")
Gruß
Björn

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige