Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Range funktioniert nicht bei auto open

Frage Microsoft Microsoft Office

Mitglied: DerBifi

DerBifi (Level 1) - Jetzt verbinden

20.12.2009 um 22:24 Uhr, 7228 Aufrufe, 7 Kommentare

Guten Abend zusammen,

Problem: Makro funktioniert bei manueller Betätigung aber nicht bei auto_open oder bei Private Sub Workbook_Open()

Hier ist der Code, dass Ihr Euch das besser vorstellen könnt:

Sub sort()
'
' sort Makro
'

'
Range("A8:A15773").Select
ActiveWorkbook.Worksheets("HS2_lower_kurz").sort.SortFields.Clear
ActiveWorkbook.Worksheets("HS2_lower_kurz").sort.SortFields.Add Key:=Range( _
"A8"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("HS2_lower_kurz").sort
.SetRange Range("A8:A15773")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub

Excel-Version: 2007, kann aber auch auf 2003 zurück gehen wenn es daran hängt.

Ziel ist, die Felder A8 bis A15773 zu markieren und die Werte zu sortieren. Bei automatischer Ausführung bekomme ich eine Fehlermeldung in der Range-Zeile am Anfang. Wo liegt mein Fehler?

Das alles ist ein Teil einer automatischen Auswertung, deshalb kann ich zwischendurch nicht manuell das Makro starten.

Würde mich riesig über Hilfe freuen, ich komme einfach nicht mehr weiter.

Viele Grüße
Bifi
Mitglied: 83928
21.12.2009 um 08:22 Uhr
Hallo Bifi,

hab die Funktion eben unter 2003 getestet. Funktionsaufruf war in Workbook_open untergebracht. Bei mir tritt kein Fehler auf (zumindest erst in der 2ten Zeile, aber auch nur weil es ein Worksheet mit dem Namen bei mir nicht gibt).

Hast Du es mit ThisWorkbook.Worksheets("Name").Range("A8:A15773").Select probiert? Evtl. hilft das.
Ist das Tabellenblatt geschützt o.ä.?

Gruß abaaba

P.S.: Benutze hier lieber ThisWorkbook statt ActiveWorkbook
Bitte warten ..
Mitglied: DerBifi
21.12.2009 um 08:56 Uhr
Guten Morgen,

das Tabellenblatt ist nicht geschützt oder so.

Habe gerade den Tipp mit dem "ThisWorkbook" ausprobiert, hat leider nicht funktioniert.

Eine andere Überlegung von mir wäre jetzt, das Excel-file per Batch zu öffnen und dann per Batch quasi-manuell das Makro starten. Wie komme ich an den Pfad des Makros? Dann könnte ich auto_open und Private Sub Workbook open () umgehen, denke ich.

Gruß Bifi
Bitte warten ..
Mitglied: 83928
21.12.2009 um 09:45 Uhr
Eine Timerprozedur wär auch denkbar.
Du schreibst das Du auf 2003 zurückgehen kannst. Das wär vermutlich die einfachere und saubere Methode.
Ach ja, nicht das das vllt. wichtig wäre oder so - wie lautet denn die Fehlermeldung ;)
Bitte warten ..
Mitglied: DerBifi
21.12.2009 um 10:40 Uhr
Zuerst mal vielen Dank für Deine Bemühungen.

Ich hab jetzt hin und her probiert und nix hinbekommen, bin wieder in Excel 2003

Hier die Fehlermeldungen:

Bei Code wie oben: Laufzeitfehler '1004': Die Methode 'Range' für das Objekt '_Global' ist fehlgeschlagen

Bei ThisWorkbook...: Laufzeitfehler '1004': Die Select-Methode des Range-Objekts konnte nicht ausgeführt werden

Bei ActiveWorkbook...: Laufzeitfehler '91': Objektvariable oder With-Blockvariable nicht festgelegt.

Dachte dann es liegt am Namen des Arbeitsblattes wegen der _ und hab alles in Tabelle1 geändert, bringt auch nix.

Was kann ich noch probieren?
Hab die Fehlermeldungen auch gegoogelt, bin nicht weiter gekommen.
Bitte warten ..
Mitglied: 76109
21.12.2009 um 10:42 Uhr
Hallo DerBifi!

Das hier sollte funktionieren:
01.
Private Sub Workbook_Open() 
02.
    Call SortColumnA 
03.
End Sub 
04.
 
05.
Sub SortColumnA() 
06.
    With Sheets("HS2_lower_kurz") 
07.
        .Range("A8:A15773").Sort Key1:=.Range("A8"), Header:=xlNo 
08.
    End With 
09.
End Sub
wobei die anderen Sort-Optionen in Deinem Code schon als Standardwerte gesetzt sind.

Gruß Dieter
Bitte warten ..
Mitglied: DerBifi
21.12.2009 um 11:01 Uhr
Vielen Dank, das war's es läuft!!!

Wünsche Euch allen eine frohe Weihnachtszeit
Bitte warten ..
Mitglied: Biber
21.12.2009 um 11:06 Uhr
Moin DerBifi,

ich vermute ähnlich wie abaaba, dass gar nicht das gewünschte Tabellenblatt "den Fokus hat".

Ich würde allerdings lediglich vor die erste deiner vorhandenen Codezeilen setzen

ThisWorkbook.Worksheets("HS2_lower_kurz").Activate

Begründung:
Wenn die Redmonder PraktikantInnenen nicht vollkommen blond programmiert haben,
dann ist der AutoStart-Makro natürlich an genau ein bestimmtes Workbook gebunden, also ist "ThisWorkbook" bekannt und activated.
Falls aber das Workbook mehrere Sheets enthält, dann muss nicht zwangsweise eines davon aktiv sein.

Grüße
Biber

[Edit] Ok, ein bisschen langsam.... ist ja Montag.. [/Edit]
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Auto Vervollständigen
gelöst Frage von AndreasFredersdorfMicrosoft Office5 Kommentare

Hallo, ich habe zwei Fragen: 1) Microsoft Excel 2007: AutoVervollständigen ist gesetzt, Hochkomma in der ersten Zelle gesetzt. Funktioniert ...

VB for Applications
Subscript out of range
gelöst Frage von gringounoVB for Applications3 Kommentare

Hallo liebe Administratoren und Administratorinen Ich bin kein wirklicher Script Virtuose, möchte aber trotzdem das hier umsetzen: Ich habe ...

Windows Server
10er Range anlegen
gelöst Frage von malikaWindows Server21 Kommentare

Hallo zusammen, ich habe auf dem Windows Server 2008 R2 ein DHCP-Dienst laufen und die IPs werden im Bereich ...

Batch & Shell
VBScript, Excel - Find in Range
gelöst Frage von internet2107Batch & Shell20 Kommentare

Hallo zusammen. Ein nettes Mitglied hat mir mit einem langen Code geholfen, dafür noch mal großen Dank. Jedoch benötige ...

Neue Wissensbeiträge
Microsoft Office

Office 2010 Starter erneut auf einer frischen Windows-Version installieren

Tipp von Lochkartenstanzer vor 23 StundenMicrosoft Office8 Kommentare

Moin, vor ein paar Tagen schlug bei mir ein Kunde auf, der sein Widnows 7 geschrottet und es inklusive ...

Datenbanken

Upgrade MongoDB 3.4 auf 3.6

Erfahrungsbericht von Frank vor 1 TagDatenbanken

Seit kurzem gibt es das 3.6 Update für die MongoDB: Sicherheit, das Sortieren, Aggregation und auch die Performance wurde ...

SAN, NAS, DAS

Backdoor Zugang und Upload-Bug in vielen Western Digital MyCloud Geräten

Information von Frank vor 1 TagSAN, NAS, DAS2 Kommentare

James Bercegay von der Firma Gulftech hat die Fehler an Western Digital gemeldet und das Unternehmen stellt bereits ein ...

Microsoft Office

Outlook 2016 - Beim Weiterleiten keine PDF Anhänge mehr - KB4011626 entfernen

Erfahrungsbericht von Deepsys vor 1 TagMicrosoft Office3 Kommentare

Wenn ihr feststellt das ihr beim Weiterleiten von E-Mails keine PDF Anhänge mehr versendent, dann dankt Microsoft. Diese tolle ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

iOS
Einladung vom iphone kalender
Frage von jensgebkeniOS15 Kommentare

Hallo Gemeinschaft, folgendes Problem - immer wenn ich von meinem Iphone einen Termin einztrage und diesem Termin Teilnehmer zuweise, ...

Windows Netzwerk
Drucker isolieren in Windows Domäne
gelöst Frage von lcer00Windows Netzwerk14 Kommentare

Hallo zusammen, habe eine Windows-AD (2012R2) in der es einen Druckerserver gibt. Mittlerweile verliere ich das Vertrauen in die ...

Drucker und Scanner
Gesucht DIN A3 Drucker
Frage von NebellichtDrucker und Scanner14 Kommentare

Hallo, ich möchte einen neuen DIN A3 Drucker kaufen. Um ab und zu, ca. 1 mal die Woche Farbausdrucke ...