Excel 365 VBA Code

Diskutiere und helfe bei Excel 365 VBA Code im Bereich Microsoft Office im Windows Info bei einer Lösung; Hallo Zusammen, ich bitte um Eure Hilfe. Ich habe einen älteren VBA Code für den Füllstand von Kugelbehältern, siehe unten, der unter Excel 2013 ohne... Dieses Thema im Forum "Microsoft Office" wurde erstellt von kn13, 17. Februar 2020.

  1. kn13
    kn13 Gast

    Excel 365 VBA Code


    Hallo Zusammen,

    ich bitte um Eure Hilfe.

    Ich habe einen älteren VBA Code für den Füllstand von Kugelbehältern, siehe unten, der unter Excel 2013 ohne Probleme lief.

    Seit ich ich Excel aus Office 365 verwende, erhalte ich bei der Zeile:

    .Fill.GradientStops2.Color.RGB = RGBRange"Rot".Value, Range"Grün".Value, Range"Blau".Value

    die Fehlermeldung, die Methode Range für das Object Range........ist fehlgeschlagen.

    Ich bin kein VBA-Spezi. Kann mir jemand helfen?

    Danke!


    Sub BlasenFaerben


    Dim LetzteZeile As Variant
    Dim i As Integer
    Dim Prozentwert As Double
    Dim Grenze1 As Double
    Dim Grenze2 As Double


    ActiveSheet.ChartObjects1.Activate
    LetzteZeile = CellsCells.Rows.Count, 1.EndxlUp.Row

    For i = 2 To LetzteZeile
    ActiveChart.SeriesCollection1.Pointsi - 1.Select
    Prozentwert = Cellsi, 5.Value
    Grenze1 = 1 - Prozentwert
    Grenze2 = 1.001 - Prozentwert
    If Prozentwert <= 0 Then
    Grenze1 = 1
    Grenze2 = 1
    ElseIf Prozentwert >= 1 Then
    Grenze1 = 0
    Grenze2 = 0
    End If

    With ActiveChart.SeriesCollection1.Pointsi - 1.Format
    .Fill.TwoColorGradient msoGradientHorizontal, 1
    .Fill.GradientStops1.Color.RGB = RGB220, 220, 220
    .Fill.GradientStops1.Position = Grenze1
    .Fill.GradientStops2.Color.RGB = RGBRange"Rot".Value, Range"Grün".Value, Range"Blau".Value
    .Fill.GradientStops2.Position = Grenze2
    End With
    Next i

    End Sub
     
  2. Andreas Killer Win User

    sollte man excel 4.0 makros umwandeln?

    Kann oder sollte ich den Programmcode in eine neue Excel-Makrosprache (VBA ?) umwandeln.
    Kann... kommt auf Dich an.

    Sollte... ja, wenn Du es in Zukunft weiter verwenden willst. Es ist angekündigt das VBA soweit erweitert wird das man alle Excel 4.0 Makros mit VBA nachbilden kann. Und dann wird eines Tages der alte Code nicht mehr unterstützt.

    Sprachtechnisch gesehen ist VBA um einiges einfacher als Excel 4.0, allerdings musst Du nun schon umdenken, da es nur noch Objekt-orientierte Sprachen gibt.

    Aber Vokabelprogramm... ich kann mir gar nicht vorstellen was da so umfangreich an dem Code sein soll... beschreib doch mal was Dein Code so macht.

    Andreas.
  3. Dura Cell Win User

    [VBA] Ausführung einer Funktion/eines Makros unterbinden

    Nochmal Hallo.

    Konnte mein Problem lösen. Wie sich herausgestellt hatte, lag die Ursache nicht an meinem VBA-Code oder dem VBA-Code der fremden XLSM. Es lag an einer Einstellung in Excel selbst. Waren wieder einige sehr lehrreiche Stunden. Vielen Dank.
  4. kn13 Win User

    Excel 365 VBA Code

    Hallo Andreas,

    vielen Dank, dass Du bereit bist, dich mit meinem Problem zu befassen!

    Ich habe den Code entsprechend geändert, leider kommt bei der Zeile: "With C.SeriesCollection(1).Points(i-1).Format" der Laufzeitfehler 438; Object unterstützt diese Eigenschaft oder Methode nicht.

    Hast Du eine Idee?

    Ich kann die Excel Datei mit dem Diagramm anhängen, falls Du es wünscht?

    Gruss

    kn

    PS: Den Code hat damals (Excel 2010) ein Excel Profi geschrieben. Ich kenne mich ein wenig mit Formeln aus, aber VBA ist leider nicht meine Welt, sorry!
  5. Andreas Killer Win User

    Excel 365 VBA Code

    .Fill.GradientStops(2).Color.RGB = RGB(Range("Rot").Value, Range("Grün").Value, Range("Blau").Value)
    die Fehlermeldung, die Methode Range für das Object Range........ist fehlgeschlagen.
    Ist ganz einfach: Es gibt keine benannten Zellen "Rot", "Grün" oder "Blau" im Blatt.

    BTW: Bitte benutze niemals SELECT, SELECTION, ACTIVECELL, es ist langsam und fehleranfällig. Referenziere immer die Objekte.

    Andreas.

    Sub BlasenFaerben()
    
      Dim LetzteZeile As Long, i As Long
    
      Dim Prozentwert As Double, Grenze1 As Double, Grenze2 As Double
    
      
    
      Dim C As Chart
    
      Set C = ActiveSheet.ChartObjects(1).Chart
    
      
    
      LetzteZeile = Cells(Cells.Rows.Count, 1).End(xlUp).Row
    
      For i = 2 To LetzteZeile
    
        Prozentwert = Cells(i, 5).Value
    
        Grenze1 = 1 - Prozentwert
    
        Grenze2 = 1.001 - Prozentwert
    
        If Prozentwert <= 0 Then
    
          Grenze1 = 1
    
          Grenze2 = 1
    
        ElseIf Prozentwert >= 1 Then
    
          Grenze1 = 0
    
          Grenze2 = 0
    
        End If
    
        With C.SeriesCollection(1).Points(i - 1).Format
    
          .Fill.TwoColorGradient msoGradientHorizontal, 1
    
          .Fill.GradientStops(1).Color.RGB = RGB(220, 220, 220)
    
          .Fill.GradientStops(1).Position = Grenze1
    
          .Fill.GradientStops(2).Color.RGB = RGB(Range("Rot").Value, Range("Grün").Value, Range("Blau").Value)
    
          .Fill.GradientStops(2).Position = Grenze2
    
        End With
    
      Next
    
    End Sub
  6. kn13 Win User

    Excel 365 VBA Code

    Hallo Claus,

    ich habe die Korrektur ausgeführt, sorry war mein Fehler bei der Änderung des Codes!

    Die Ausführung bleibt nun bei ".Fill.GradientStops(2).Color = RGB(Range("Rot"), Range("Grün"), Range("Blau"))hängen

    Die Fehlermeldung lautet:

    "Sie haben versucht, eine Prozedur anzuzeigen, der Bezeichner am
    Einfügepunkt war jedoch kein Prozedurname. Dieser Fehler hat die folgende Ursache und Lösung:

    Der Bezeichner ist kein Prozedurname. Überprüfen Sie die Schreibung des Bezeichners."

    Kannst Du damit etwas anfangen?

    Danke

    kn
  7. User Advert


    Hi,

    willkommen im Windows Forum!
Thema:

Excel 365 VBA Code - Microsoft Office

Die Seite wird geladen...

Excel 365 VBA Code - Similar Threads - Excel 365 VBA

Forum Datum

Excel VBA Code Mietberechnung

Excel VBA Code Mietberechnung: Hallo zusammen,könnte mir jemand mit einem VBA Code behilflich sein?Ich möchte gerne die grünen Felder als flexible Eingabefelder haben.Und das Ergebnis sollte entsprechend dem Beispiel...
Microsoft Office 18. Januar 2024

Excel verhindert den Start von VBA-Code und den Zugang zum Code.

Excel verhindert den Start von VBA-Code und den Zugang zum Code.: Excel verhindert den Start von VBA-Code und den Zugang zum Code. Die xlsm-Datei ist nach dem Aufruf gesperrt auch wenn sie nicht gespeichert wurde.Seit Tagen kann ich die Entwicklung einer...
Microsoft Office 11. Dezember 2023

Excel VBA Code Adressabfrage von bestimmten PLZ

Excel VBA Code Adressabfrage von bestimmten PLZ: Hallo zusammen,ich möchte bestimmte Adressen aus einen Kundendatenbank 750.000 Datensätze selektieren. Die Selektion läuft über die PLZ. Die selektierten Datensätze der entsprechenden PLZ sollen...
Microsoft Office 10. Juli 2023

Error in VBA code in Excel

Error in VBA code in Excel: Good morning,I have a VBA code that was working fine and now it keeps bringing up an error message. Can someone help me here please? Thank you!
Microsoft Office 22. Juni 2023

Excel VBA-Code

Excel VBA-Code: Hallo liebe Community,ich würde gerne den Zelleninhalt aus Zelle "E8" im Tabellenblatt "Januar" als Kommentar/Notiz in das Tabellenblatt "Februar" in der Zelle "E8" übernehmen. Als nächstes soll...
Microsoft Office 27. Mai 2022

Mistake in VBA code

Mistake in VBA code: Hi there, the following code ought to be used to get data from an excel file to update data in my master file. Unfortunately the process just stops, excel closes itself and tries to repair the...
Microsoft Office 18. Januar 2021

VBA Code Zeilenumbruch

VBA Code Zeilenumbruch: Hallo, ich sehe den Fehler im Code nicht. Nachdem ich versucht habe einen Zeilenumbruch einzuehren geht es nicht mehr... LG Co [IMG]
Microsoft Office 6. Oktober 2016
Excel 365 VBA Code solved
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.