So funktioniert JustAnswer:

  • Fragen Sie einen Experten
    Tausende Experten in über 200 Kategorien.
  • Erhalten Sie eine professionelle Antwort
    Per E-Mail oder sofortiger Benachrichtigung, während Sie auf unserer Website warten.
    Stellen Sie ggf. weitere Anschlussfragen.
  • 100%ige Zufriedenheit garantiert
    Bewerten Sie die erhaltene Antwort.

Stellen Sie Ihre Frage an IT-Fachinformat...

IT-Fachinformatiker
IT-Fachinformatiker, Systemadministrator
Kategorie: Computer
Zufriedene Kunden: 6838
Erfahrung:  Software Entwicklung, Projekt Erfahrung, Windows-Netzwerke, Linux-Netzwerke, Windows/Linux-Server
32504664
Geben Sie Ihre Frage in der Kategorie Computer hier ein
IT-Fachinformatiker ist jetzt online.

Hallo K nner Ich hab in EXCEL 97 ein Prorgamm geschrieben.

Kundenfrage

Hallo Könner

Ich hab in EXCEL 97 ein Prorgamm geschrieben. Ein Befehl davon lautet, in einer Zelle enthaltenen Text immer bei den Kommas zu trennen und in einzelnen Zellen abzulegen. In EXCEL 07 funktioniert dieser Programmteil nicht mehr. (findet befehl "left" nicht mehr in bibliothek)

kann mir da jemand helfen?

Sub AufbMitKomma()
'Aufbereiten der Spalten, bei welchen die einzelnen Daten mit einem Komma getrennt sind
Worksheets("Verarbeitungsfelder").Cells.ClearContents

Dim AW, letzteZelle, i
Dim z%, s%, n%, K%
Dim Komma%
Dim Vorname$, Rest$


z = 2 'erste Zeile mit Namen, ändern!
s = Worksheets("Optionen").Cells(5, 16).Value 'Spalte mit Namen, ändern!
'Erste Zelle auswählen
'Letzte Zelle mit Namen suchen
AW = Worksheets("Archiv").Cells(Rows.Count, s).End(xlUp).Row
letzteZelle = AW
AW = AW + 2

'Für jede Zelle, in der Namen stehen
For i = z To letzteZelle
'Falls die Zelle leer ist, nächste Zelle
If Worksheets("Archiv").Cells(i, s) = "" Then GoTo nächste
Komma = InStr(Worksheets("Archiv").Cells(i, s), ",")
'Falls kein Komma in der Zelle ist Namen eintragen
'und weiter zur nächsten Zelle
If Komma = 0 Then
Vorname = Worksheets("Archiv").Cells(i, s)
Worksheets("Verarbeitungsfelder").Cells(AW, 2).Value = Vorname
AW = AW + 1
GoTo nächste
End If
'Ersten Namen herausarbeiten und eintragen
Vorname = left$(Worksheets("Archiv").Cells(i, s), Komma - 1)
Worksheets("Verarbeitungsfelder").Cells(AW, 2).Value = Vorname
AW = AW + 1
'Falls Leerstelle nach dem Komma vergessen wurde
If left(Right(Worksheets("Archiv").Cells(i, s), Len(Worksheets("Archiv").Cells(i, s)) - (Komma)), 1) = " " Then
Rest = Right(Worksheets("Archiv").Cells(i, s), Len(Worksheets("Archiv").Cells(i, s)) - (Komma + 1))
'sonst
Else: Rest = Right(Worksheets("Archiv").Cells(i, s), Len(Worksheets("Archiv").Cells(i, s)) - (Komma))
End If
'weitere Namen herausarbeiten und eintragen,
'mehr als zwei Namen in der Zelle sind möglich
Do While Komma >= 0
Komma = InStr(Rest, ",")
If Komma = 0 Then
Vorname = Rest
Worksheets("Verarbeitungsfelder").Cells(AW, 2).Value = Vorname
AW = AW + 1
Exit Do
End If
Vorname = left(Rest, Komma - 1)
Worksheets("Verarbeitungsfelder").Cells(AW, 2).Value = Vorname
AW = AW + 1
'Falls Leerstelle nach dem Komma vergessen wurde
If left(Right(Rest, Len(Rest) - (Komma)), 1) = " " Then
Rest = Right(Rest, Len(Rest) - (Komma + 1))
'sonst
Else: Rest = Right(Rest, Len(Rest) - (Komma))
End If
Loop
nächste:
Next i

'Sortieren
SortZweiteSpVerarbeitungsfelder

'Doppelte herausfiltern und in 1. Spalte übertragen
DoppelteFiltern
End Sub
Gepostet: vor 6 Jahren.
Kategorie: Computer
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Hallo,

ich sehe, das Sie sich sehr gut mit Excel bzw. dessen VBA auskennen. Eines vorweg: Die von Ihnen verwendete Version wird nicht mehr von Microsoft unterstützt, lediglich Downloads stehen zur Verfügung. Sie schreiben, das die Funktion Left usw. nciht gefunden wird schauen Sie im VBA-Editor (ALT+F11) dann bitte mal:

Menü: Extras > Verweise

dort muss ein Hacken bei "Excel 97 Object Library" sein falls nicht, wird natürlich ein Teil der Funktionen nicht mehr von Excel gefunden ferner muss ein Hacken bei "Office 97" und bei "Visual Basic for Applications" drin sein. Ich vermute, das Ihr Problem eben an den Verweisen liegt den Rest scheinen Sie ja hinzubekommen. Ferner sollten Sie das SR1 für Office 97 installieren, damit diverse Fehler behoben werden. Dieses finden Sie bei Microsoft:

http://www.microsoft.com/downloads/details.aspx?FamilyID=3D702F0B-4DA8-4FB2-80E4-CCFB8D3C1D0B&displaylang=DE

Ich hoffe, das Ihnen meine Infos weiter helfen.

Gruss Günter


Experte:  MKruse hat geantwortet vor 6 Jahren.
Hallo,

den Befehl Left gibt es immernoch in Excel 2007. Ich sehe nur, dass das "left" in ihrem Code klein geschrieben ist. Ich weiß zwar nicht, wie sie das hinbekommen haben, aber VBA könnte damit Probleme haben.
Bitte korrigieren Sie ihr left in "Left". Wenn es dann immernoch nicht funktioniert geben Sie uns bitte ihre Fehlermeldung.

MfG
M Kruse
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Ja, jetzt wird es klarer: Auch unter Excel 2007 müssen Sie im VBA-Editor sicherstellen, das die folgenden Verweise aktiviert sind:

Auch hier Menü Extras > Verweise

- "Visual Basic for Applications"
- "Excel 2007 Object Library"
- "Office 2007 Library"

Der Befehl Left muss dann funktionieren. VBA macht in der GROSS und kleinschreibung keinerlei Unterschiede. Beispiel:

Dim a As String
a= Left(1, 4)

Gruss Günter

Kunde: hat geantwortet vor 6 Jahren.

Besten Dank, jedoch hat mir dies nicht weiter geholfen..

 

Der Download SR1 wird für folgende Programme angeboten:

  • Word 97
  • Word 98
  • Excel 97
  • Excel 98
  • Outlook 97
  • Outlook 98
  • PowerPoint 97
  • PowerPoint 98
  • Access 97
  • Access 98
  • Office 97
  • Office 98

Ich besitze Betriebssystem Windows 7, Professional

 

Ausserdem finde ich keine:

  • Excel 97 Object Library
  • Office 97

zum ankreuzen.

 

Bitte um Verständnis, möchte das Programm umschreiben und nicht zusätze installieren, damit das besagte programm auch auf anderen PC's läuft.

 

Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Hallo,

also ich habe vorhin ja bemerklt, das Sie das ganze in Excel 2007 machen wollen der Code sollte eigentlich reibungslos laufen es sei denn Sie haben externe DLLs und/oder externe Komponenten im Einsatz dem ist aber nicht so. Grundsätzlich sind die Dinge kompatibel so auch in Excel 2007. Schauen Sie bitte einmal im VBA-Editor Ihrer 2007er Version nach den korrekten Verweisen:

Auch hier Menü Extras > Verweise

- "Visual Basic for Applications"
- "Excel 2007 Object Library"
- "Office 2007 Library"

Ob Sie left oder Left oder LEFT schreiben ist vollkommen egal, da der Editor dies automatisch umsetzt. Ich empfehle ferner das SP2 für Office 2007 zu installieren, wenn es nicht schon vorhanden ist:

http://www.microsoft.com/downloads/details.aspx?familyid=b444bf18-79ea-46c6-8a81-9db49b4ab6e5&displaylang=de

Meine Vermutung ist schlicht, das die Verweise nicht existieren und VBA aus diesem Grund nichts mit dem Kommando (oder besser Funkton) Left anfangen kann. Ich habe Ihren Code allerdings nicht überprüft ich gehe davon aus, das dieser unter 97 fehlerfrei läuft. Sobald Sie die Verweise geprüft haben müsste es eigentlich gehen es kann aber sein, das das ein oder andere an Excel 2007 angepasst werden muss.

Gruss Günter

Experte:  MKruse hat geantwortet vor 6 Jahren.
Hallo nochmal,

der Kollege hat wahrscheinlich recht. Jetzt ist mir auch eingefallen, wie sie die Left-Anweisung in Kleinschreibung bekommen haben. Eigentlich korrigiert der VBA-Editor solche Eingaben. Aber wahrscheinlich kennt er diesen Befehl tatsächlich aufgrund fehlender Verweise.
Beim Import aus der alten Excel-Version sind wohl die alten Verweise erhalten geblieben.
Setzen Sie die Verweise auf die vom Kollegen erwähnten, wobei bei meinem Excel die Verweise:

Visual Basic For Applications
Microsoft Excel 12.0 Object Library
OLE Automation
Microsoft Office 12.0 Object Library

gesetzt sind. Der Left-Befehl müsste im ersten Verweis sein. Trotzdem müssten alle Verweise gesetzt sein, um volle Kompatibilität zu gewährleisten.
Bitte deaktivieren Sie alle Verweise. Gibt es einen davon doppelt (die ganze Liste mal nach zwei Einträgen für Visual Basic For Applications durchsuchen), dann versuchen Sie den anderen zu aktivieren.

MfG
M Kruse
Kunde: hat geantwortet vor 6 Jahren.

Hallo Günter

Das Servicepack 2 hatte ich bereits installiert.

 

Die Verweise "Excel 2007 Object Library" und "Office 2007 Library" sind so nicht verfügbar.

 

angekreuzt ist:

  • "Visual Basic for Applications"
  • "Microsoft Excel 12.0 Object Library"
  • "OLE Automation"
  • "Microsoft Office 12.0 Object Library"
  • "Microsoft Forms 2.0 Object Library"
  • "Microsoft Windows Common Coltrols-2 6.0(SP4)"
  • "NICHT VORHANDEN: Microsoft Calendar Control 8.0"

Im Excel 97 hatte der Prozess einwandfrei funktioniert.

 

Bitte um eine Lösung

Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Hallo,

nach dem ich sehe, welche Verweise Sie gesetzt haben komme ich zu dem Schluss, das es schlicht und einfach laufen sollte. Ihr Projekt wurde jedoch für weit über 10 Jahren entwickelt zumindest die zu Grunde liegende damalige Excel Fassung hat dieses Alter es wäre nicht auszuschließen, das Sie Ihren Code anpassen müssen. Es muss eine Fehlermeldung erscheinen.

Entfernen Sie bitte unter Extras > Verweise mal den Hacken bei "NICHT VORHANDEN: Microsoft Calendar Control 8.0" das ist eine von mehreren weiteren Ursachen für Ihr Problem. Dann erstellen Sie bitte einmal eine leere Exceldatei und fügen VBA-Code hinzu und zwar nur mit der Left-Funktion der VBA-Editor sollte aus left direkt Left machen, sobald Sie Return gedrückt haben.

Falls das nicht so sein sollte jedoch alle Verweise stimmen was hier offenbar der Fall ist, wird es schwieriger. Wenn es funktioniert, dann muss zwangsläufig auch Ihre Datei laufen bzw. einen aussagkräftigen Fehler heraus geben.

Hier habe ich auch eine Liste, die Funktionen beinhaltet die in Excel 2007 nicht mehr unterstützt werden evtl. finden Sie dort eine Erklärung, falls es immer noch nicht klappt. Normalerweise sollten Sie die Datei mit Excel 2000/2003 öffen, ggf. anpassen, dann speichern und erst im nächsten Schritt mit Excel 2007 öffnen.

Der direkte Weg führt eher zu Fehlern als der Umweg der eigentlich richtig wäre über mehrere Versionen hin weg.

Gruss Günter

IT-Fachinformatiker, Systemadministrator
Kategorie: Computer
Zufriedene Kunden: 6838
Erfahrung: Software Entwicklung, Projekt Erfahrung, Windows-Netzwerke, Linux-Netzwerke, Windows/Linux-Server
IT-Fachinformatiker und weitere Experten für Computer sind bereit, Ihnen zu helfen.
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Hier habe ich auch eine Liste, die Funktionen beinhaltet die in Excel 2007 nicht mehr unterstützt werden ..

Der Link ist:

http://office.microsoft.com/de-de/excel-help/features-von-excel-97-2003-die-in-office-excel-2007-nicht-unterstutzt-werden-HA010198895.aspx

Gruss Günter

Bekannt aus:

 
 
 
„[...]mehr als Zehntausend Experten weltweit; 1500 davon in Deutschland. Acht Jahre nach dem Start ist das [...] Online-Unternehmen mit seinen 90 Mitarbeitern die größte Web-Seite für das Vermitteln von Experten von Anwälten über Ärzte bis hin zu Universitätsprofessoren.“
„Wer eine fachmänische Lösung für ein medizinisches, rechtliches oder technisches Problem sucht, kann das jetzt auch im Internet tun. Lebenshilfe auf die schnelle, unkomplizierte und vor allem erschwingliche Art bietet die Seite www.justanswer.de. Etwa 1500 Experten stehen per Mail für Fragen zu ca. 200 Fachgebieten rund um die Uhr zur Verfügung."
„Rat gewünscht? Rechtliche, medizinische oder allgemeine Fragen beantworten Experten unter www.justanswer.de."
„JustAnswer, die weltweit führende Online-Plattform für Expertenfragen und -antworten, bietet ab sofort noch mehr Sicherheit und Qualität für Verbraucher."
„Ob Vorbereitung, Notfall oder Reklamation nach dem Urlaub - JustAnswer bietet jederzeit schnelle, kompetente Antworten"
„Die Online-Plattform JustAnswer bringt Ratsuchende und Experten in über 200 Fachgebieten zusammen."
 
 
 

Was unsere Besucher über uns sagen:

 
 
 
  • Ich bedauere, dass ich nicht gleich bei Ihnen gelandet bin. Die Leerung des Cache hat das Problem gelöst. Danke Gerd Schönbuchner Grafrath
< Zurück | Weiter >
  • Ich bedauere, dass ich nicht gleich bei Ihnen gelandet bin. Die Leerung des Cache hat das Problem gelöst. Danke Gerd Schönbuchner Grafrath
  • Endlich ein Experte, der mir wirklich weiterhelfen konnte! DANKE! JustAnswer Kunde Taunusstein
  • Ihre Antwort hat mir sehr geholfen, die richtigen Entscheidungen zu treffen. Dass Sie mir darüber hinaus noch 2 Empfehlungen gegeben haben fand ich super. Vielen Dank! JustAnswer Kunde Freiburg
  • Die ausgearbeiteten Hilfen waren gut strukturiert, leicht verständlich und zu 100% hilfreich für mich. Vielen Dank Markus B. Karlsruhe
  • Sehr schnelle und kompetente Antwort, die für mich bares Geld bedeutet. Vielen Dank! S.Stober K.
  • Herzlichen Dank! Hab durch Ihre Antwort viel Geld gespart! Ben R. Deutschland
  • Sehr schnelle und kompetente Hilfestellung. Besonders für mich als Laien wurde alles sehr verständlich erklärt. Gerne wieder! Rosengl Bad Tölz
 
 
 

Lernen Sie unsere Experten kennen:

 
 
 
  • Tronic

    Tronic

    IT-Specialist

    Zufriedene Kunden:

    2269
    Elektroniker und EDV-Service
< Zurück | Weiter >
  • http://ww2.justanswer.com/uploads/PY/Pyroflash/2011-4-21_104934_tronic.64x64.jpg Avatar von Tronic

    Tronic

    IT-Specialist

    Zufriedene Kunden:

    2269
    Elektroniker und EDV-Service
  • http://ww2.justanswer.com/uploads/rufushoschi/2010-11-08_135947_bild.jpg Avatar von IT-Fachinformatiker

    IT-Fachinformatiker

    Systemadministrator

    Zufriedene Kunden:

    6338
    Software Entwicklung, Projekt Erfahrung, Windows-Netzwerke, Linux-Netzwerke, Windows/Linux-Server
  • http://ww2.justanswer.com/uploads/COMINAROSA/2010-02-03_172238_PASSBILD.JPG Avatar von COMIN IT-Service

    COMIN IT-Service

    Dipl.-Ing.

    Zufriedene Kunden:

    779
    Dipl.Ing (FH) ET, NT, IT
  • http://ww2.justanswer.com/uploads/RaubergerConcep/2010-03-02_102740_Portraet64.jpg Avatar von RaubergerConcept

    RaubergerConcept

    IT-Specialist

    Zufriedene Kunden:

    234
    Mehr als 10 Jahre Erfahrung in Softwareentwicklung und Netzwerktechnik
  • http://ww2.justanswer.com/uploads/LF/lfalkenburg/2015-2-8_01843_.64x64.jpg Avatar von Lutz Falkenburg

    Lutz Falkenburg

    IT-Specialist

    Zufriedene Kunden:

    96
    Seit über 20 Jahren beruflich im IT-/IUK-Bereich tätig. Egal ob EinzelPC der Netzwerk...
  • http://ww2.justanswer.com/uploads/BI/BigDaddyXD/2012-10-24_20126_WhySoSeriousJob.64x64.jpg Avatar von BigDaddyXD

    BigDaddyXD

    Informatiker

    Zufriedene Kunden:

    1588
    Microsoft Certified Professional, Microsoft Certified Desktop Support Technican,...
  • http://ww2.justanswer.com/uploads/PU/Pucky80/2011-5-14_54537_pucky80.64x64.jpg Avatar von Pucky80

    Pucky80

    IT-Systemkaufmann

    Zufriedene Kunden:

    1322
    MCITP (Microsoft Server 2008 Enterprise Administrator)
 
 
 

Ähnliche Fragen in der Kategorie Computer