Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Sortieren mittels Excel 2003 und Excel 2007

Frage Entwicklung VB for Applications

Mitglied: DockMaster-de

DockMaster-de (Level 1) - Jetzt verbinden

15.06.2011, aktualisiert 21:07 Uhr, 6209 Aufrufe, 4 Kommentare

Hallo,

wie ich feststellen musste, ist Sortieren in Excel 2003 und Excel 2007 nicht das gleiche. Ich habe hier eine Code geschrieben der in Excel 2003 funktioniert und bei 2007 nicht.

01.
Private Sub Sort() 
02.
 If Application.Version > "11.0" Then 
03.
    '###################################### 
04.
    '### Sortierroutine für Excel 2007-2010 
05.
    '###################################### 
06.
    ActiveWorkbook("Stand").Unprotect Password:="password" 
07.
    ActiveWindow.SmallScroll Down:=15 
08.
    Range("A1:D38").Select 
09.
    ActiveWindow.SmallScroll Down:=-30 
10.
    ActiveWorkbook.Worksheets("Stand").Sort.SortFields.Clear 
11.
    ActiveWorkbook.Worksheets("Stand").Sort.SortFields.Add Key:=Range("D1:D38"), _ 
12.
        SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal 
13.
    With ActiveWorkbook.Worksheets("Stand").Sort 
14.
        .SetRange Range("A1:D38") 
15.
        .Header = xlGuess 
16.
        .MatchCase = False 
17.
        .Orientation = xlTopToBottom 
18.
        .SortMethod = xlPinYin 
19.
        .Apply 
20.
    End With 
21.
    ActiveSheet.Protect Password:="password" 
22.
Else 
23.
    '##################################### 
24.
    '### Sortierroutine für Excel bis 2007 
25.
    '##################################### 
26.
ThisWorkbook.Sheets("Stand").Select 
27.
Dim Sortierspalte As String 
28.
Dim Bereich As String 
29.
Bereich = "A1:D38" 
30.
Sortierspalte = "D" 
31.
ActiveSheet.Unprotect Password:="password" 
32.
ActiveSheet.Range(Bereich).Sort _ 
33.
 Key1:=Range(Sortierspalte & "1"), Order1:=xlDescending, _ 
34.
 Header:=xlGuess, MatchCase:=False, _ 
35.
 Orientation:=xlTopToBottom 
36.
 ActiveSheet.Protect Password:="password" 
37.
 End If 
38.
End Sub
Da ich kein Programmierer bin, komme ich nicht weiter.
Habt ihr eine Lösung?

have a nice day...

DockM@ster

[Edit Biber] Codeformatierungs-Tags angepasst [/Edit]
Mitglied: Clijsters
15.06.2011 um 19:25 Uhr
Hallo,

wie ich feststellen musste, ist Sortieren in Excel 2003 und Excel 2007 nicht das gleiche. Ich habe hier eine Code geschrieben der in Excel 2003 funktioniert und bei 2007 nicht.
könntest du das genauer definieren?


Gruß
Dominique
Bitte warten ..
Mitglied: DockMaster-de
15.06.2011 um 20:45 Uhr
Wenn ich mit Excel2003 arbeite springt es in die Subroutine für Excel 2003 und druckt das Blatt. Arbeite ich aber mit Excel 2007 wird die Subroutine für Excel 2007 ausgeführt und es bleibt bei ActiveWorkbook("Stand").Unprotect Password:="password" stehen. Fehlermeldung 40036.

Was ich suche ist eine Sortierroutine für Excel 2007.


have a nice day...

DockM@ster
Bitte warten ..
Mitglied: Clijsters
15.06.2011 um 22:11 Uhr
und es bleibt bei ActiveWorkbook("Stand").<b>Unprotect</B Password:="password" stehen. Fehlermeldung 40036.
Finde den Unterschied ;)
Zeile 21. ActiveSheet.Protect Password:="password"

Unabhängig davon, ersetze doch mal
01.
ActiveSheet.Protect Password:="password" 
durch
01.
MsgBox ActiveSheet.Name
Tritt der Fehler dann auch auf?

Idee sollte der Fehler auch in der messagebox auftreten:

  • Nimm den Inhalt des Sheets, auf welches du die Routine anwendest und kopiere ihn in ein neues Sheet. tritt der Fehler auch hier auf?
  • Wenn du ausschließlich sortieren möchtest, brauchst du das protect? - Ansonsten würde ich sagen, weg damit, auskommentieren oder Behebt alle meine Probleme ;) "on error resume next" Wobei ich hier schon eine Fehlerüberprüfung einbauen würde.
Das Verwenden oder nicht verwenden des protect könntestt du in dem Fall auch von der Version abhängig machen oder irre ich mich?


Gruß
Dominique
Bitte warten ..
Mitglied: DockMaster-de
15.06.2011 um 22:21 Uhr
Problem habe ich gelöst!

Private Sub Sort()
If Application.Version > "11.0" Then
'
'### Sortierroutine für Excel 2007-2010
'
Tabelle15.Unprotect Password:="password"
Range("A1:D38").Sort Key1:=Range("D1"), Order1:=xlDescending, Key2:=Range("C1")
Tabelle15.Protect Password:="password"
MsgBox "Rangliste wurde aktuallisiert!", vbOKOnly, "Information"
Else
'
'### Sortierroutine für Excel bis 2007
'
ThisWorkbook.Sheets("Stand").Select
Dim Sortierspalte As String
Dim Bereich As String
Bereich = "A1:D38"
Sortierspalte = "D"
ActiveSheet.Unprotect Password:="password"
ActiveSheet.Range(Bereich).Sort _
Key1:=Range(Sortierspalte & "1"), Order1:=xlDescending, _
Header:=xlGuess, MatchCase:=False, _
Orientation:=xlTopToBottom
ActiveSheet.Protect Password:="password"
End If
End Sub

have a nice day...

DockM@ster
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Exchange Server
gelöst Microsoft Excange Server 2007 auf Windows Server 2003 Installieren? (9)

Frage von Herbrich19 zum Thema Exchange Server ...

Exchange Server
Exchange 2003 auf 2007 Implace Migration (18)

Frage von Herbrich19 zum Thema Exchange Server ...

Microsoft Office
Excel 2007: Sortierung ohne ins Datenblatt zu springen (2)

Frage von JoSiBa zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...