Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1160to1164
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

Artikeleingabe / Fehlermeldung

Artikeleingabe / Fehlermeldung
Georg
Hallo liebe Gemeinde,
habe von fcs (Franz) die VBA-Codes erhalten und diese funktionieren unter Office 2000 auch
wunderbar. Nun soll dieses Programm aber auch unter Office 97 laufen.
Sobald ich dieses versuche, erhalte ich beim Wechsel in den Tabellenblättern aber
eine Fehlermeldung. Da meine VBA-Kenntnisse sehr bescheiden sind, bitte ich Euch
um Hilfe. Vielleicht kann mir ja jemand weiterhelfen.
Hier das Beispiel:
https://www.herber.de/bbs/user/70149.xls
Gruß
Georg

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Fehlermeldung?
19.06.2010 09:11:06
Erich
Hi Georg,
hier ein Zitat aus den Forums-FAQ:

Fehlerbeschreibungen
Beschränke Dich nicht auf die lapidare Feststellung Excel meldet Fehler;
gib die exakte Fehlermeldung an. Stoppt Excel einen VBA-Code,
gib die exakte Zeile des Programmabbruchs an.
Alles klar?
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Artikeleingabe / Fehlermeldung
19.06.2010 09:34:27
Hajo_Zi
Hallo Georg,
es fehlt das Makro "Join"

AW: Artikeleingabe / Fehlermeldung
19.06.2010 10:18:35
Hajo_Zi
Hallo Georg,
ich habe jetzt mal in 2010 nachgeschaut. "Join" ist ein Befehl den es wohl in 97 noch nicht gibt.
Gruß Hajo
Anzeige
AW: Artikeleingabe / Fehlermeldung
19.06.2010 12:13:38
fcs
Hallo Georg,
der Code wie in der hochgeladenen Datei stammt nicht von mir. Es ist auch eine etwas andere Datei.
Es ist ein Stand, wie er war, bevor ich dir zuletzt geholfen hatte.
Damals ging es darum, das die Datei unter Excel2007 noch funktionierte aber unter älteren Versionen nicht, bzw. es konnten keine weiteren Artikel eingeben werden.
Damals hatte ich dir die Prozeduren angepasst und die Auswahlliste für die Artikel wurde danach in einem separaten Blatt erstellt und für die DropDow-Auswahl im Blatt Bestellungen mit einem Namen versehen.
Warum lädst du hier jetzt wieder eine ältere Datei hoch?
Das Problem mit der zu langen Auswahlliste für die bedingte Formatierung besteht natürlich auch unter Excel97.
zusätzlich gibt es die Probleme, dass
1. es unter Excel97 die VBA-Funktion Join noch nicht gibt - Problem erledigt sich aber von selbst, wenn die Auswahlliste auf separatem Blatt verwaltet wird.
2. unter Excel97/Windows98 "CreateObject("Scripting.Dictionary")" und einige davon abhängige Funktionen nicht funktionieren.
Deshalb muss die Function "UniqueList" komplett umgeschrieben werden.
3. unter Excel97 löst die Eingabe/Auswahl von Werten per DropDown aus einer Datengültigkeit das Change-Ereignis eines Tabellenblatts nicht aus. Somit werden nach Auswahl eines Artikels im Blatt "Bestellung" die Auswahllisten für Farbe und Größe nicht automatisch aktualisiert. Das funktioniert nur, wenn man die Artikel direkt in die Zellen eintippt.
Du solltest dir also überlegen, ob die Datei unter Excel97 unbedingt lauffähig und bearbeitbar sein muss.
Gruß
Franz
Anzeige
AW: Artikeleingabe / Fehlermeldung
19.06.2010 18:44:22
Georg
Hallo Franz,
habe leider das falsche Beispiel hochgeladen.
Hier der mir von Dir zur Verfügung gestellt Code.
https://www.herber.de/bbs/user/70155.xls
Gruß
Georg
AW: Artikeleingabe / Fehlermeldung
20.06.2010 08:05:24
fcs
Hallo Georg,
damit die Datei auch unter Excel97 und ggf. einer älteren Office/Windowsversion geöffnet werden kann muss du im Modul1 die Function "UniqueList" durch die folgende Prozedur ersetzen.
Ich hab's auf einem alten Notebook mit Excel97/Windows98SE getestet.
Wie schon geschrieben bleibt das Problem, dass unter Excel97 im Blatt Bestellliste die Auswahllisten für Farbe und Größe nicht erstellt/aktualisiert werden wenn per DropDown-Auswahl ein Artikel gewählt wird. Der Code des Tabellenblatts "Bestellung" muss wie folgt ersetzt werden, um das Problem zu umgehen.
Ich weiss nicht, ab welcher Excel-Version die Gültigkeits-DropDown-Auswahl das Worksheet-Change-Ereignis auslöst. Du muss also evtl. die "9" in der Versionsprüfung durch einen größeren Wert für eine der späteren Versionen ersetzen.
Gruß
Franz
Private Function UniqueList(Matrix As Range, Optional Sorted As Boolean = True) As Variant
'Erstellt unter Excel 2007 - Funktioniert auch unter Excel97
Dim rng As Range, varTmp() As Variant
Dim oCollection As New Collection, iIndex As Long
On Error GoTo Fehler
For Each rng In Matrix
If rng.Value  "" Then oCollection.Add rng.Value, CStr(rng.Value)
ReDim Preserve varTmp(0 To iIndex)
varTmp(iIndex) = rng.Value
iIndex = iIndex + 1
NextRng:
Next
If Sorted Then QuickSort varTmp
UniqueList = varTmp
Fehler:
With Err
Select Case .Number
Case 0 ' Alles OK
Case 457 'Element mit gleichem Schlüssel in Collection bereits vorhanden
Resume NextRng
Case Else
MsgBox "Fehler-Nr.: " & .Number & vbNewLine & .Description
End Select
End With
End Function
'Neuer Code Tabellenblatt "Bestellung" - Erstellt unter Excel 2007 und Excel 97
Option Explicit
Private Sub Worksheet_Calculate()
With Application
If Val(Left(.Version, 2))  "" Then
createColorList Cells(rng.Row, 5), rng.Text
createSizeList Cells(rng.Row, 6), rng.Text
Else
Range(Cells(rng.Row, 5), Cells(rng.Row, 6)).Validation.Delete
End If
Next
End If
End Sub

Anzeige
AW: Artikeleingabe / Fehlermeldung
20.06.2010 22:33:30
Georg
Hallo Franz,
in dem Beispiel funktioniert es einwandfrei.
Werde morgen weiter testen. Vielen Dank für Deine Hilfe.
Gruß
Georg

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige