Probleme beim Umstieg von Excel

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

wellkisch
Beiträge: 3
Registriert: Di, 08.03.2011 11:44

Probleme beim Umstieg von Excel

Beitrag von wellkisch »

Ich habe mir nach langen Probieren ein Makro in Excel erstellt, welches Zellwerte aus einzelnen Dateien in eine Übersichtsdatei als Verknüpfung einfügt. Dazu wird der Dateiname der ersten Datei abgefragt und dann automatisch Zelle für Zelle in die Übersichtsdatei übernommen.

Dieses Makro ist für mich sehr wichtig und hält mich davon ab endlich auf Open/Libreoffice umzusteigen. Die Versuche meinerseits das Makro in Open/Libreoffice umzuwandeln enden mit etlichen Fehlermeldungen.

Wo liegt mein Problem- kann mir jemand helfen?

hier die gekürzte Fassung:

Code: Alles auswählen

Sub a_Tabellen_einbinden()
'
' Makro2 Makro
' Makro am 10.10.2001 von Wellkisch aufgezeichnet
'
1
'
        'Fügt Daten der Datei "Dateiname" in Datei Übersicht.xls ein
        Dim dateiname As String
        'Dim datei As String
        
        'Aufruf des Dateidialoges
        dateiname = Application.GetOpenFilename
        'wenn Abbrechen oder ESC gedückt wurde
             If dateiname = "Falsch" Then
            'MsgBox "Sie haben keine Datei gewählt!"
            GoTo 2
        ' Sonst wird die gewählte Datei angezeigt
         Else
            'MsgBox "Sie haben die Datei " & dateiname & " gewählt"
                'enfügen einer Zeile (Zeile 3)
                Rows("2:2").Select
                Selection.Insert Shift:=xlDown
                Range("A2").Select
        End If
            
          
          Workbooks.Open Filename:=dateiname
  
    Windows.Arrange ArrangeStyle:=xlHorizontal
    Windows("00_uebersicht2.XLS").Activate
    'ActiveWindow.Zoom = 50
    'aktives Fenster immer Windows (1)--> inaktives Fenster öffnen
    Windows(2).Activate
        'ActiveWorkbook.Windows(1).Caption = "datei"
        
    Sheets("Tabelle1").Select
    Range("C3:F3").Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("00_uebersicht2.XLS").Activate
    ActiveSheet.Paste Link:=True
    Windows(2).Activate
    Range("C6:F6").Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("00_uebersicht2.XLS").Activate
    Range("B2").Select
    ActiveSheet.Paste Link:=True
    Windows(2).Activate
    Range("C7:F7").Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("00_uebersicht2.XLS").Activate
...

  Windows(2).Activate
    Range("A1:F1").Select
    ActiveWindow.Close
    ActiveWindow.WindowState = xlMaximized
    'ActiveWindow.Zoom = 100
    ' Range("A1:F1").Select
    Range("A3:ci3").Select
    Selection.Copy
    Range("A2:ci2").Select
    Range("ba2").Activate
    Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Application.CutCopyMode = False
    ' Range("A3").Select
    ' Selection.End(xlToRight).Select
    Range("Ax3:az3").Select
    Selection.Copy
    Range("Ax2").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    
    Range("ch3:ci3").Select
    Selection.Copy
    Range("ch2").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
            
    'Range("A1:ba400").Select
    'Selection.Sort Key1:=Range("C2"), Order1:=xlAscending, Key2:=Range("B2") _
        , Order2:=xlAscending, Key3:=Range("A2"), Order3:=xlAscending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    'Range("d2").Select
    Range("A1").Select
    'Range(Selection, Selection.End(xlDown)).Select
    'Range(Selection, Selection.End(xlToRight)).Select
    'Selection.Sort Key1:=Range("C2"), Order1:=xlAscending, Key2:=Range("B2") _
        , Order2:=xlAscending, Key3:=Range("A2"), Order3:=xlAscending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Range("A2").Select
    
GoTo 1
2
End Sub


Moderation,4: CODE tags gesetzt
gogo
*****
Beiträge: 207
Registriert: Mi, 10.11.2010 13:11

Re: Probleme beim Umstieg von Excel

Beitrag von gogo »

mit etlichen Fehlermeldungen.
ebendiese hier posten ;)

g
g
LucidLynx/WinXP LibreOffice v3.3.2 ab 03/12 v3.3.2 & v3.4.5
wellkisch
Beiträge: 3
Registriert: Di, 08.03.2011 11:44

Re: Probleme beim Umstieg von Excel

Beitrag von wellkisch »

Basic-syntax fehler. Label $arg(1) bereits definiert

Dann vermutetet ich, dass die Sprungmarken keine Zahlen sein dürften und habe die 1 am Anfang bzw. die 2 in der goto schleife durch "anfang" und "ende" ersetzt:
Basic-syntax fehler. Label ende undefiniert

Schreibe ich hinter das letze "ende" einen Doppelpunkt (hab ich irgendwo gelesen...) steht

Label a_tabellen_einbinden undefinert

Leider ist mein Latein am Ende- Danke für die Hilfe.
gogo
*****
Beiträge: 207
Registriert: Mi, 10.11.2010 13:11

Re: Probleme beim Umstieg von Excel

Beitrag von gogo »

das mit dem Label "a_tabellen_einbinden" kann ich nicht nachvollziehen, so heisst ja eigentlich die Sub...
Zahlen sind nicht so gut als Label, eine Zahl pro Sub funktioniert, 2 Stk nicht *grübel*
folgender Code funktioniert:
Sub Main
1:
n=n+1
msgbox n
if n >= 5 then goto ddd
goto 1

ddd:
End Sub

Die ganzen Dims IN den Schleifen machen vermutlich auch Probleme.

Lösung:

Alle Dims VOR den Schleifen machen und dann entweder:

die Dims in den Schleifen durch "ReDim" ersetzen,

oder:
die Variablen einfach neu be- oder entfüllen, musst Du sehen wie Dein Code funktionieren soll.


g
g
LucidLynx/WinXP LibreOffice v3.3.2 ab 03/12 v3.3.2 & v3.4.5
wellkisch
Beiträge: 3
Registriert: Di, 08.03.2011 11:44

Re: Probleme beim Umstieg von Excel

Beitrag von wellkisch »

OK, das hat funktioniert! Beim Übersetzen gibts keine Fehlermeldung.

Aber nun das beim Ausführen :
ScreenShot 021 00_Uebersicht2.ods.VBAProject - LibreOffice Basic.jpg
ScreenShot 021 00_Uebersicht2.ods.VBAProject - LibreOffice Basic.jpg (115.58 KiB) 1676 mal betrachtet
Antworten