Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Abfrage in VBA effizienter gestalten

Abfrage in VBA effizienter gestalten
Axel
Hallo,
ich erstelle ein Diagramm mit Excel, allerdings wähle ich vorher Verschiedene Parameter aus, die dann in dem Diagramm dargestellt werden sollen.
Nun muss der Name des Diagramms allerdings an die Auswahl angepasst werden, damit ich immer weiß, was ich mir gerade anzeigen lasse. Bisher sieht mein Code dazu so aus:
'Aussagekräftigen Titel zusammenbauen
----------->Das muss effektiver gehen!!!
If Auswahl_ParameterA <> -1 Then
Diagrammname = Auswahl_ParameterA
End If
If Auswahl_ParameterB <> -1 Then
Diagrammname = Diagrammname & " " & Auswahl_ParameterB
End If
If Auswahl_ParameterC <> -1 Then
Diagrammname = Diagrammname & " " & Auswahl_ParameterC
End If
If Auswahl_ParameterD <> "keine Auswahl" Then
Diagrammname = Diagrammname & " " & Auswahl_ParameterD
End If
If Auswahl_ParameterE <> "keine Auswahl" Then
Diagrammname = Diagrammname & " " & Auswahl_ParameterE
End If
With ActiveChart
.ChartType = xlXYScatterSmooth
.ChartArea.Border.LineStyle = xlNone
.HasTitle = True
.ChartTitle.Text = Diagrammname
End With
Ich finde diesen Aufbau schrecklich. Kennt ihr einen schnelleren und effektiveren Weg?
Gruß und Dank
Axel
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: mit so wenig Information über den Code
23.01.2010 14:08:35
Daniel
kann man da schlecht was optimieren.
was ist z.B. "Auswahl_ParameteC"
und wie wäre es mit dem Hochladen einer Beispieldatei?
Gruß, Daniel
AW: mit Index-Variablen
23.01.2010 14:36:55
Daniel
Hi
1. IF-Abfrage:
IF-Bedingunen, die nur den TRUE-Pfad haben (kein ELSE) und dieser aus einem Befehl besteht, kann man auch so schreiben:
IF Bedingung 1 Then MachWas
anstelle von:
If Bedingung 1 then
MachWas
End if
wenn du die Auswahlparameter als Index-Variable gestaltets, dann könntest du statt der Einzelabfrage eine Schleife drüber laufen lassen, das würde dann in etwa so aussehen:
For i = 1 to 5
Select Case AuswahlParameter(i)
Case -1, "keine Auswahl"
Case else
Diagrammtitel = Diagrammtitel & " " & Auswahlparameter(i)
end select
next
Diagrammtitel = Mid$(Diagrammtitel, 2)
Gruß, Daniel
Anzeige
AW: Abfrage in VBA effizienter gestalten
23.01.2010 15:02:19
Gerd
Hallo Axel,
meinst Du so?
Diagrammname = Trim$(Diagrammname & Replace(Replace(" " & Auswahl_ParameterB & " " & Auswahl_ParameterC & " " & Auswahl_ParameterD & " " & Auswahl_ParameterE, " -1", ""), " keine Auswahl", ""))
Gruß Gerd
AW: Abfrage in VBA effizienter gestalten
25.01.2010 08:28:25
Axel
Hallo,
ich werde beides mal ausprobieren.
Danke für eure Antworten.
Bin leider gerade nicht an der Arbeit, daher werde ich die Lösungen erst im Laufe der Woche testen können.
Gruß
Axel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige