ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
2915
2915
EMPFEHLEN
-
hallo,
ich möchte über VB die C spalte in excel aufsteigend sortieren. mit einem VBA makro hab ich das hinbekommen (siehe grüner code) ich möchte aber jetzt an der stelle einen VB code haben.
wie mach ich das am geschicktesten?
Code vb:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Private Sub btnPlanIds_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPlanIds.Click Dim xliApp = CreateObject("EXCEL.APPLICATION") Dim xliWB = xliApp.Workbooks.Open(pfad_i) 'Cells.Select 'Selection.Sort Key1:=Range("C1"), Order1:=xlAscending, Header:= _ 'xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ 'DataOption1:=xlSortNormal xliWB.Close() xliWB = Nothing xliApp = Nothing End Sub
Geändert von win98 (15.02.10 um 16:06 Uhr) Grund: CODE
-
15.02.10 17:26 #2
Im Prinzip funktioniert das ganze schon so, wie du dir das gedacht hast (Excel-Makro aufzeichnen und das verwenden), dabei gibt es aber noch ein paar Sachen zu beachten.
In deinem Fal musst du natürlich vor die auskommentierten Anweisungen noch das xliWB setzen, also würde das so aussehen:
Code vb:1 2 3 4 5
xliWB.Cells.Select xliWB.Selection.Sort Key1:=Range("C1"), Order1:=xlAscending, Header:= _ xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal
Es gibt aber noch das Problem, dass diese VBA-Konstanten ala xlAscending, xlGuess usw. in VB nicht deklariert sind, du müsstest die reelen Werte einfügen oder sie ganz streichen (die meisten Werte sind eh die Standardwerte). In deine Fall würde das ganze so aussehen (Konstanten durch die entsprechenden Werte ersetzt):
Code vb:1 2 3 4 5
xliWB.Columns("C:C").Select xliWB.Selection.Sort Key1:=Range("C1"), Order1:=1, Header:= _ 0, OrderCustom:=1, MatchCase:=False, Orientation:=1, _ DataOption1:=0
Der Doc!A: Hilfe, ich hab zwei Dateien hinzugefügt und nun sind die anderen weg
B: Die Scrollbar da rechts ist dir schon mal aufgefallen?
-
vielen dank für die ausführliche antwort.
wenn ich so deinen code verwende, hab ich einen fehler (blau unterstrichen "nicht deklariert") bei "Range("C1")". geh auch nich weg wenn ich stattdessen Cells(1,3) schreibe.
deswegen hab ichs so gemacht: (weil die sortierung soll im sheet "pro_node" passieren)
Code vb:1 2 3 4 5
xliWB.Columns("C:C").Select() xliWB.Selection.Sort(Key1:=xliWB.Sheets("pro_node").Range("C1"), Order1:=1, Header:= _ 0, OrderCustom:=1, MatchCase:=False, Orientation:=1, _ DataOption1:=0)
jetzt ist nix mehr unterstrichen.
wenn ich es laufen lassen will möchte er gleich in der ersten zeile debuggen. fehler : "typ workbook wurde nicht gefunden"
deswegen hab ich es so erstetzt:
Code vb:1 2 3 4 5
xliWB.Sheets("pro_node").Columns("C:C").Select() xliWB.Selection.Sort(Key1:=xliWB.Sheets("pro_node").Range("C1"), Order1:=1, Header:= _ 0, OrderCustom:=1, MatchCase:=False, Orientation:=1, _ DataOption1:=0)
dann geht er weiter und ich bekomm genau den selben fehler in zeile 3 und deswegen hab ich das jetzt so stehn:
jetzt bringt er mit den fehler "typ worksheet wurde nicht gefunden"Code vb:1 2 3 4 5
xliWB.Sheets("pro_node").Columns("C:C").Select() xliWB.Sheets("pro_node").Selection.Sort(Key1:=xliWB.Sheets("pro_node").Range("C1"), Order1:=1, Header:= _ 0, OrderCustom:=1, MatchCase:=False, Orientation:=1, _ DataOption1:=0)
warum? ich hab doch angegeben sheets("pro_node").
weißt du worans liegen könnte?
-
Hallo,
ich habe mir eine Liste erstellt und möchte die über mehrere Spalten Sortieren, ab Zeile 5 d.h. erst Spalte E absteigend sortieren und dann Spalte D absteigend etc.! So über benutzerdifiniertes sortiern kann ich, aber ich möchte gerne eine Grafik einfügen, die dann einen Befehl hat das er mir das Sortiert. Ich weiß das man das über Visual Basic machen kann benutze Microsoft Excel 2007
Ich kann auch jemanden die Datei per E-mail schicken!
MFG ElwertGeändert von Elwert (17.11.10 um 15:34 Uhr)
Ähnliche Themen
-
Array alphabetisch sortieren....
Von ahnernoch im Forum PHPAntworten: 3Letzter Beitrag: 23.12.09, 21:17 -
Array alphabetisch sortieren
Von _BlueScreen im Forum C/C++Antworten: 2Letzter Beitrag: 27.04.08, 23:21 -
alphabetisch sortieren
Von Winner im Forum C/C++Antworten: 5Letzter Beitrag: 24.09.07, 08:57 -
alphabetisch sortieren mit java
Von taucher82 im Forum JavaAntworten: 3Letzter Beitrag: 02.11.06, 22:09 -
Variablen alphabetisch sortieren
Von eierfeile im Forum Visual Basic 6.0Antworten: 19Letzter Beitrag: 01.12.03, 16:49





Zitieren

Login





