Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1748to1752
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Konstanten mit Asc() deklarieren

Konstanten mit Asc() deklarieren
06.04.2020 14:41:45
stefan
Hallo,
ich habe eine größere VBA-Mappe mit vielen Subs und Funktionen erstellt. Da ich immer wieder auf dies selben Spalten zugreife, aber sich die Spalten bei einem anderen Projekt ändern könnten, möchte ich dafür Konstanten verwenden.
Bisher hatte ich also z.B. sowas
Cells(i,"D").Value
und jetzt
Cells(i,SPALTE_NAME).Value
Die Konstanten habe ich in einem anderen Modul deklariert. Gern hätte ich es so gemacht:
Public Const SPALTE_NAME = Asc("D")-64
Hier kann man einfach den Buchstaben hineinschreiben und muss nicht erst von Zahlen und Buchstaben manuell umrechnen. Leider gibt es hier einen Fehler, da der Ausdruck wohl nicht konstant ist. Wobei sich daran ja eigentlich im Nachhinein nix ändern dürfte, oder?
Alternativ habe ich jetzt
Public SPALTE_NAME As Integer
SPALTE_NAME = Asc("A") - 64
probiert, aber das geht auch nicht, da ich die Initialisierung wohl nur innerhalb eines Subs machen kann.
Hat hier jemand eine Idee, wie ich das ganze schön kompakt schreiben kann, sodass man auch nur die Buchstaben ändern muss?
Mir fällt jetzt nur ein, direkt die Zahlen statt den Buchstaben hinzuschreiben, was ich jedoch nicht so schön finde.
Viele Grüße
Stefan

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Konstanten mit Asc() deklarieren
06.04.2020 14:47:14
Nepumuk
Hallo Stefan,
Asc ist eine Funktion deren Rückgabewert variabel ist, daher kannst du das in einer Konstanten nicht benutzen. Schreib doch den Buchstaben einfach als Kommentar dahinter.
Gruß
Nepumuk
AW: Konstanten mit Asc() deklarieren
06.04.2020 16:50:46
Daniel
Hi
Konstanten können nicht berechnet werden, dh du musst auch einen konstanten Wert zuweisen und diesen selber rechnen und ggf wie von Nepumuk beschrieben, zusätzliche Informationen als Kommentar angeben:
Also:
Const SpaltenName as Long = 4 'Spalte D
Allerdings, Cells verarbeitet auch den Spaltenbuchstaben, dh du kannst auch so arbeiten:
Const SpaltenName as String = "D"
Beides funktioniert mit Cells(i, SpaltenName)
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige