Collapse column

Beiträge anzeigen

Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.


Nachrichten - Büffes

Seiten: [1]
1
Excel / Brauche Hilfe für eine VBA Lauftzeit Error 13
« am: Oktober 25, 2016, 14:32:20 Nachmittag »
Hallo liebe Leute,

ich bin der Büffes und bin neu hier und freue mich schon mein Wissen n Excel etwas zu verbessern.
Ich hänge jetzt schon seit einer Woche an einer Excel Formel die ich irgendwie nicht behoben bekomme und hoffe, dass ihr mir da helfen könnt.
Erst mal zur Funktion (und zur Anmerkung die Formel hat vorher noch funktioniert) :
Man soll mit einem Drop Down eine eine Nummer auswählen. diese Nummer ist der Name einer anderen Excel Datei mit einem Datensatz.
Wenn man nun die Nummer ausgewählt hat soll Excel die Daten automatisch herausnehmen und dann gleich ein Liniendiagramm erstellen. Das ist mir einem Pfad geregelt der hinterlegt ist.
Technisch kann ich leider nicht mehr sagen, da ich nicht der Ersteller bin sondern "nur" den Fehler beheben soll... :(

Das Problem : Die Daten werden richtig aus der ausgewählten Datei ausgesucht aber am Diagramm scheitert es. Es wird immer die Fehlermeldung "Laufzeitfehler 13 Typen unverträglich" angezeigt. Die betreffende Zeile auf die verwiesen wird habe ich markiert.

Ich würde mich freuen , wenn mir da jemand helfen kann.

Viele Grüße und schon mal vielen Dank.


Sub diagramm()

Dim setz As Double

länge = Sheets(1).UsedRange.Rows.Count
If länge = 1 Then länge = 2

Sheets(1).Activate

Sheets(1).Rows(2 & ":" & länge).Select
Selection.Delete Shift:=xlUp

Sheets(2).Activate

Sheets(2).Rows(2 & ":" & länge).Select
Selection.Delete Shift:=xlUp
Sheets(2).Cells(1, 1).Select

Sheets(1).Activate

Maschine = Sheets(1).TextBox1
Equi = Maschine & ".xlsx"
Pfad = "Pfad kommt hier rein"
Werk = Sheets(1).ComboBox1.Value & "\"

Datei = Pfad & Equi

namediagramm = ActiveWorkbook.Name

vorhanden = Dir(Datei)
If vorhanden = "" Then
MsgBox ("Text")
Exit Sub
End If

Workbooks.Open (Datei), False, True

Bezeichnung = Sheets(1).Range("C8")

gesamt = MsgBox("Frage"& Chr(13) & "Achtung große Datenmenge und unübersichtlich!", vbYesNo)

If gesamt = vbYes Then
ges:
Range(Cells(17, 1), Cells(Sheets(1).UsedRange.Rows.Count, 4)).Select
Selection.Copy
GoTo Auswahlende
End If

If gesamt = vbNo Then

For ge = Sheets(1).UsedRange.Rows.Count To 17 Step -1
    If ge = 17 Then GoTo ges
   
    If Left(Sheets(1).Cells(ge, 8), 12) = "Text" Then
    beginn = ge
    GoTo Rausauswahl
    End If
Next

Rausauswahl:
Range(Cells(beginn, 1), Cells(Sheets(1).UsedRange.Rows.Count, 4)).Select
Selection.Copy

End If
Auswahlende:

Workbooks(namediagramm).Activate

Cells(2, 1).Select
ActiveSheet.Paste

Workbooks(Equi).Activate

ZZ = 2
For Z = 17 To Sheets(1).UsedRange.Rows.Count
Qas = Sheets(1).Cells(Z, 6)
    If Sheets(1).Cells(Z, 6) <> "" Or Left(Sheets(1).Cells(Z, 8), 12) = "Neubefüllung" Then
    datumZ = Sheets(1).Cells(Z, 1)
    ZugabeZ = Sheets(1).Cells(Z, 6)
    BemerkungZ = Sheets(1).Cells(Z, 8)
    Workbooks(namediagramm).Activate
    Sheets(2).Cells(ZZ, 1) = datumZ
    Sheets(2).Cells(ZZ, 2) = ZugabeZ
    Sheets(2).Cells(ZZ, 3) = BemerkungZ
    Workbooks(Equi).Activate
    ZZ = ZZ + 1
    End If
Next

Workbooks(Equi).Close False

For r = 2 To 4
lZeile = Sheets(1).UsedRange.Rows.Count
    For i = 2 To lZeile
        If Cells(i, r) = "" And Cells(i, r + 1) = "" And Cells(i, r + 2) = "" Then
        If Cells(i, r - 1) = "" Then GoTo weiter
        Sheets(1).Rows(i & ":" & i).Select
        Selection.Delete Shift:=xlUp
        i = i - 1
        Else
        If Cells(i, r) = "k.M.e" Then GoTo weiter
        setz = Cells(i, r)
        Cells(i, r) = setz
        End If
weiter:
    Next
Next

länge = Sheets(1).UsedRange.Rows.Count

    ActiveSheet.ChartObjects("Diagramm 1").Activate
   
    ActiveChart.PlotArea.Select
    ActiveChart.SeriesCollection(1).Delete
    ActiveChart.SeriesCollection(1).Delete
    ActiveChart.SeriesCollection(1).Delete
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).Name = "=Diagramm!$B$1"
    ActiveChart.SeriesCollection(1).Values = Range(Cells(2, 2), Cells(länge, 2))
    ActiveChart.SeriesCollection(1).XValues = Range(Cells(2, 1), Cells(länge, 1))
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(2).Name = "=Diagramm!$C$1"
    ActiveChart.SeriesCollection(2).Values = Range(Cells(2, 3), Cells(länge, 3))
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(3).Name = "=Diagramm!$D$1"
    ActiveChart.SeriesCollection(3).Values = Range(Cells(2, 4), Cells(länge, 4))
    ActiveChart.SeriesCollection(3).AxisGroup = 2
    ActiveChart.ChartTitle.Text = Bezeichnung & Chr(13) & " Equinr.: " & Maschine

Cells(1, 1).Select

Sheets(2).Activate
    With ActiveSheet.PageSetup
        .CenterHeader = "&""-,Fett""&14&A " & Maschine
        .LeftFooter = "&""blablabla ¦ &D"
        .RightFooter = "&""Arial,Standard""&8&P ¦ &N"
    End With

Sheets(1).Activate

End Sub

Seiten: [1]