Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1432to1436
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

Selection.AutoFill

Selection.AutoFill
27.06.2015 13:08:07
Alexander

Hallo,
kann mir mal wer bitte helfen, ich hab offensichtlich einen Syntaxfehler im Bereich der Autofillfunktion am Ende, kann mir bitte einer sagen, was da nicht stimmt? Danke!

Sub DateiOeffnen()
Dim Filename As String
Dim Pfad As String
ChDrive ("C:\")
ChDir ("C:\DVD\")
Filename = Application.GetOpenFilename
If Filename <> "Falsch" Then
Filename = Dir(Filename)
Pfad = CurDir
Range("C2").Select
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-2],'" & Pfad & "\[" & Filename & "]Prg'!c12:c17,6,   _
_
_
FALSE)"
Application.CutCopyMode = False
lz = Cells(Rows.Count, 1).End(xlUp).Rows.Row
Selection.AutoFill Destination:=Range(.Cells(2, 3), .Cells(lz, 3)), Type:=xlFillDefault
End If
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Selection.AutoFill
27.06.2015 13:43:27
Sepp
Hallo Alexander,
ohne .Select, einfach zuweisen.
Sub DateiOeffnen()
  Dim Filename As String
  Dim Pfad As String
  Dim lz As Long
  
  ChDrive ("C:\")
  ChDir ("C:\DVD\")
  
  Filename = Application.GetOpenFilename
  
  If Filename <> "Falsch" Then
    Filename = Dir(Filename)
    Pfad = CurDir
    lz = Application.Max(2, Cells(Rows.Count, 1).End(xlUp).Row)
    Range("C2:C" & lz).Formula = "=VLOOKUP(A2,'" & Pfad & "\[" & Filename & "]Prg'!C12:C17,6,FALSE)"
  End If
  
End Sub


Gruß Sepp

Anzeige
AW: Selection.AutoFill
27.06.2015 14:57:35
Alexander
Hallo,
danke, funktioniert! Könntest mir auch noch schnell bei was anderem helfen?
Wenn ich bei dem sverweis " Prg'!l:q " nur die Spalten l und q angebe, funktioniert das zwar, aber er braucht dann für den sverweis ca 20 sekunden. Kann man das schneller machen? Was ich will ist quasi das gleiche wie wenn man in der Excel Funktion sverweis als Matrix "$l:$q" angibt.

AW: Selection.AutoFill
27.06.2015 15:38:19
Daniel
Hi
du hast hier folgende Möglichkeiten, das ganze zu beschleunigen:
1. Öffne die Datei, bevor du die Formeln einfügst.
wenn die Datei geöffnet im Speicher vorliegt, kann Excel viel schneller auf die Daten zugreifen und du brauchst den Pfad nicht angeben.
Wichtig ist, dass wenn du die Formeln beibehälst, dass du erst die Datei mit der Datenquelle schließt, damit Excel in den Formeln den Pfad ergänzen kann.
Sub DateiOeffnen()
Dim Filename As String
Dim Pfad As String
Dim lz As Long
ChDrive ("C:\")
ChDir ("C:\DVD\")
Filename = Application.GetOpenFilename
If Filename <> "Falsch" Then
Workbooks.Open Filename, ReadOnly:=True
Filename = Dir(Filename)
ThisWorkbook.Activate
lz = Application.Max(2, Cells(Rows.Count, 1).End(xlUp).Row)
Range("C2:C" & lz).Formula = "=VLOOKUP(A2,'[" & Filename & "]Prg'!C12:C17,6,FALSE)"
End If
End Sub
die zweite Beschleunigungstufe bei sehr grossen Datenmengen in der Quelldatei wäre, dass du diese vorher nach der Suchspalte (L) sortierst und dann mit dem SVerweis mit 4. Parameter = Wahr zu arbeiten.
der ist dann nämlich um Welten schneller als sein "falscher" Bruder.
gruß Daniel

Anzeige
AW: Selection.AutoFill
27.06.2015 14:59:25
Alexander
Hallo,
danke, funktioniert! Könntest mir auch noch schnell bei was anderem helfen?
Wenn ich bei dem sverweis " Prg'!l:q " nur die Spalten l und q angebe, funktioniert das zwar, aber er braucht dann für den sverweis ca 20 sekunden. Kann man das schneller machen? Was ich will ist quasi das gleiche wie wenn man in der Excel Funktion sverweis als Matrix "$l:$q" angibt.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige