Feedback

C# - Integer nach Excel Spalten Bezeichnung

Veröffentlicht von am 22.11.2006
(7 Bewertungen)
Dieses kleine Snippet, ermittelt aus einer Integer Zahl die jeweilige Excel interne Spalten Bezeichnung.

Beispiel

1 ==> A
2 ==> B
.
.
26 ==> Z
27 ==> AA

usw

**UPDATE**

Ich habe das ganze nochmal verkürzt
und die begrenzung auf zwei zeichen rausgenommen

also haben wir nur noch normale integer grenzen!!


mfg
GFU-Schulungen  [Anzeige]

VB.NET Komplett

Sie stehen vo der Aufgabe, individuelle Anwendungen für Windows zu schreiben. Hier ist VB.NET die optimale Sprache. Sie erlernt sich recht leicht und passt sich komplett in die .NET Umgebung von Microsoft ein. Nach der Schulung entwickeln Sie anwenderfreundliche Programme in VB.NET . Mit den objektorientierten Modellen in VB.NET erzeugen Sie außerdem wiederverwendbare Komponenten.

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

/// <summary>
/// Dieses Funktion kann dazu benutzt werden, um eine integer Zahl in eine Buchstaben Kombination
/// umzuwandeln die der Kopfzeile eines Excel Dokumentes entspricht
///
/// UPDATE
/// und nun haben ich euch auch die Begrenzung auf zwei stellen mal rausgenommen
/// </summary>
/// <param name="colNumber"></param>
/// <returns>(string) die jeweilige Spalten Bezeichnung</returns>
private string IntConvertToExcelHeadLine(int colNumber)
	{
		string colBez = "";
		int rest = 0;
		
		// Ist die Zahl größer als 26 ist das ergebniss mindestens 2 Stellig
		// also muß eine Schleifen verarbeitung her
		if (colNumber > 26){
			do{
                // Ganzzahl ermitteln für den nächsten durchlauf
				colNumber = Math.DivRem(colNumber, 26, out rest);
				if (rest==0){
					colNumber -= 1;
					rest = 26;
				}
                //Umwandlung in einen Buchstaben (die + 64 sollten jedem klar)
				colBez = (char)(rest+64) + colBez;
			}while (colNumber > 26);
		}
		colBez = (char)(colNumber + 64) + colBez;

		return colBez;
	}

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!