Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1148to1152
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

bei Fensterwechsel: Activate vermeiden

bei Fensterwechsel: Activate vermeiden
Klaus
Moin VBA-ler,
mein erstes Makro über verschiedene Dateien funktioniert (dank angepasstem Recorder-Code).
Nur habe ich für die Fensterwechsel diese hässlichen .activate Befehle drin und bekomm die nicht raus ...
Das geht doch bestimmt eleganter?
Ausserdem möchte ich gerne abfragen, ob die Datei "Umlaufbestand.xls" überhaupt geöffnet ist und sie bei Bedarf öffnen (oder eben nicht). Das geht bestimmt mit einem simplen IF-THEN-ELSE, aber ich bekomms grad nicht hin.
Sub Makro1()
Sheets("Bedarfe").Cells.ClearContents
Windows("Umlaufbestand.xls").Activate
Sheets("Übersicht").Cells.Copy
Windows("Bedarfsliste.xls").Activate
Sheets("Bedarfe").Cells.PasteSpecial Paste:=xlPasteValues
End With
End Sub

Vielen Dank an alle Helfer im Vorraus,
Klaus M.vdT.

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: bei Fensterwechsel: Activate vermeiden
14.04.2010 12:24:10
Rudi
Hallo,
einfach so:
Sheets("Bedarfe").Cells.ClearContents
Workbooks("Umlaufbestand.xls").Sheets("Übersicht").Cells.Copy
Sheets("Bedarfe").Cells(1, 1).PasteSpecial Paste:=xlPasteValues

Gruß
Rudi
Daten aus Quelle nach Ziel kopieren
14.04.2010 12:37:22
NoNet
Hallo Klaus,
ich habe das Makro etwas "umgestrickt", so dass es alle gewünschten Anforderungen erfüllt :
Sub UebersichtNachBedarfeKopieren()
Dim shQuelle As Worksheet, shZiel As Worksheet
Dim strQuellname As String
strQuellname = "Umlaufbestand.xls" 'Name der Quelldatei
On Error Resume Next 'Fehlerbehandlung einschalten
'Prüfen, ob Quelldatei bereits geöffnet ist :
If IsError(strQuellname = Workbooks(strQuellname).Name) Then
On Error GoTo 0 'Fehlerbehandlung ausschalten
Workbooks.Open "C:\Hier\Dein\Pfad\" & strQuellname 'Pfadname mit "\" am Ende !!
'ODER : Datei aus AKTUELLEM Verzeichnis öffnen :
'Workbooks.Open strQuellname
End If
Set shQuelle = Workbooks(strQuellname).Sheets("Übersicht")
Set shZiel = Workbooks("Bedarfsliste.xls").Sheets("Bedarfe")
shZiel.Cells.ClearContents
shQuelle.Cells.Copy
shZiel.[A1].PasteSpecial xlPasteValues
Application.CutCopyMode = False 'Kopierrand entfernen
End Sub
Gruß, NoNet
Anzeige
Vielen Dank! o.w.T.
15.04.2010 07:41:29
Klaus
..

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige