Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1348to1352
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
Inhaltsverzeichnis

HILFE! ZÄHLENWENNS VBA

HILFE! ZÄHLENWENNS VBA
27.02.2014 18:15:03
Mieze
Hallo zusammen :-)
Nach gefühlten 10 Stunden Sucherei wende ich mich nun an euch.
Ich habe eine Exceldatei (Hauptdatei) mit sehr vielen Tabellenblättern. Da dies sehr unübersichtlich ist, wollte ich gerne alle Blätter, die Exporte aus Datenbanken enthalten aus dieser Hauptdatei entfernen, was ich auch gemacht habe, indem ich sie verschoben haben.
Nun wollte ich einen externen Bezug herstellen, dass ich nicht jede einzelne Datei öffnen möchte. Klappt auch soweit, SOLANG es Zahlen sind.
Problem: In der Hauptdatei habe ich einige Dinge berechnet mit Hilfe der ZÄHLENWENNS-Funktion und so bekomme ich enweder "WAHR" oder "FALSCH" Werte raus.
Leider habe ich es bis jetzt nicht geschafft für diese "TRUE/FALSE" Werte einen externen Bezug herzustellen.
Mein Ziel ist es also die ZÄHLENWENNS-Funktionen mit Hilfe von VBA so umzusetzen, sodass dann in der Hauptdatei die Anzahl der WAHR bzw FALSCH-Werte stehen habe, sodass ich diese dann auswerten kann.
Zunächst hatte ich es mit COUNTIF versucht, bis ich herausgefunden hab, dass sich damit kein externer Bezug herstellen lässt.
Mein Erfolg war, dass ich es hinkriege, solang alles in einer Datei ist, aber ich möchte gerne den externen Bezug.. :-(
Ich bin wirklich am verzweifeln! Ich würde mich sehr freuen falls mir jemand helfen könnte :-)
Mein Code bisher:


Sub AktualBasisII()
Dim strSource As String
strSource = "=" &
"'C:\PFAD[Test1.xls]Tabelle1'!R1C1:R20C5"
With Range("A1:A13")
.FormulaArray = CStr(strSource)
.Cells.Value = .Cells.Value
End With
End Sub
----> Dieser erste Teil gibt mir Zahlen wieder!
Sub CountDupes()
Dim lrC As Long, lrD As Long
lrC = Cells(Rows.Count, "C").End(xlUp).Row
lrD = Cells(Rows.Count, "D").End(xlUp).Row
Range("E2:E" & lrD).Formula = "=COUNTIF($C$1:$C$" & lrC & ",$D2)"
End Sub
----> funktioniert so wie ich es will, aber nur, wenn WAHR & FALSCH in der gleichen Tabelle  _
sind und nicht mit externen Bezug.
Ich nehme an man mischt wohl beide Codes.. ich habe leider keine Ahnung :-(

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: HILFE! ZÄHLENWENNS VBA
28.02.2014 02:20:42
fcs
Hallo Mieze,
versuche dein Glück bei der Auswertung mit der Funktion SUMMENPRODUKT.
Beispiel:
=SUMMENPRODUKT(('C:\Users\Public\Test\[Quelldatei.xlsx]Tabelle1'!$C$1:$C$20 = $D2)*1)

als Makro etwa so
Sub Makro1()
' Makro1 Makro
Dim wks As Worksheet, strPfad As String, lngRow As Long
Set wks = ActiveSheet
strPfad = "'C:\Users\Public\Test\[Quelldatei.xlsx]Tabelle1'!"
With wks
lngRow = .Cells(.Rows.Count, 4).End(xlUp).Row
With .Range(.Cells(2, 5), .Cells(lngRow, 5)) 'Formel in Spalte E
.FormulaR1C1 = "=SUMPRODUCT((" & strPfad & "R1C3:R20C3 = R[0]C4)*1)"
.Calculate
'        .Value = .Value
End With
End With
End Sub

Gruß
Franz

Anzeige
AW: HILFE! ZÄHLENWENNS VBA
28.02.2014 11:43:07
Rudi
Hallo,
Zählenwenn(s) funktioniert nicht mit geschlossenen Dateien. Ebenso SummeWenn(s)
Da dies sehr unübersichtlich ist, wollte ich gerne alle Blätter, die Exporte aus Datenbanken enthalten aus dieser Hauptdatei entfernen
Wenn's nur um die Übersichtlichkeit geht, blende sie doch einfach aus.
Gruß
Rudi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige