Ich bin am verzweifeln. Ich habe ein Programm das sortiert. Das Sortierkriterium möchte ich über Buttons auswahlen z.B. Mechanik, Elektro oder Pneumatik.
Ich hab probiert das mit einer userform(das auswahl heißt), wie folgt,zu machen aber das Klappt nicht
Public
Sub Pneumatik_Click()
Dim P As String
MsgBox "Pneumatik"
P = "P"
sort = P
MsgBox sort
Exit Sub
End Sub
Public
Sub Elektro_Click()
Dim E As String
sort = E
End Sub
Public
Sub Mechanik_Click()
Dim M As String
sort = M
End Sub
P soll z.B. wieder an das Hauptprogramm zurück gegeben werden, das wie flogt aussieht
For F = 1 To 10
Application.ScreenUpdating = False
'Textdatei rein kopieren:
s = Application.GetOpenFilename
'MsgBox s
Workbooks.Open Filename:=s
E = ActiveWorkbook.name
MsgBox E
'Spalten löschen und verändern!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:
Rows("1:4").Select
Selection.Delete
Columns("A:A").Select
Selection.Insert Shift:=xlToRight
Auswahl.Show
'Cases zum Unterscheiden von Elektro, Pneumatik, Mechanik!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:
'sort = InputBox("Sortierungkriterium eingeben:" & Chr(10) & "Für Elektro : E" & Chr(10) & "Für Pneumatik : P" & Chr(10) & "Für Mechanik : M")
'Auswahl.Hide
MsgBox sort
Select Case sort
Case Is = "E"
For x = 800 To 1 Step -1
xstring = Val(x)
feld = "G" + xstring
Range(feld).Select
T = InStr(ActiveCell.FormulaR1C1, "Elektro")
If T = 0 Then Rows(x).EntireRow.Delete
Next x
MsgBox " Sortierungskriterium : Elektro "
Case Is = "M"
For x = 800 To 1 Step -1
xstring = Val(x)
feld = "G" + xstring
Range(feld).Select
T = InStr(ActiveCell.FormulaR1C1, "Mech")
If T = 0 Then Rows(x).EntireRow.Delete
Next x
MsgBox " Sortierungskriterium : Mechanik "
Case Is = "P"
For x = 800 To 1 Step -1
xstring = Val(x)
feld = "G" + xstring
Range(feld).Select
T = InStr(ActiveCell.FormulaR1C1, "Pneu")
If T = 0 Then Rows(x).EntireRow.Delete
Next x
MsgBox " Sortierungskriterium : Pneumatik "
Case Else:
MsgBox "Falsche eingabe"
End Select