Hilfsfunktionen
Dezimaltrennzeichen erkennen
Es gibt oftmals Excel-Funktionen, die es erfordern zu erkennen, welches Art von Trennzeichen bei Dezimalzahlen verwendet wird. Dazu gibt es zwei Möglichkeiten.
Dezimaltrennzeichen
Public Function Dezimaltrennzeichen() As String Dezimaltrennzeichen = Application.DecimalSeparator End Function
Dezimaltrennzeichen2
Public Function Dezimaltrennzeichen2() As String If "0.5" * 2 = 1 Then Dezimaltrennzeichen2 = "." Else Dezimaltrennzeichen2 = "," End IfEnd Function
Spaltenbreite und Zellhöhe in mm festsetzen
Spaltenbreite und Zellhöhe festsetzen
'' Spaltenbreite und Zellhöhe festsetzenSub SetColumnWidthMM(ColNo As Long, mmWidth As Integer)' changes the column width to mmWidthDim w As Single If ColNo < 1 Or ColNo > 16384 Then Exit Sub Application.ScreenUpdating = False w = Application.CentimetersToPoints(mmWidth / 10) While Columns(ColNo + 1).Left - Columns(ColNo).Left - 0.1 > w Columns(ColNo).ColumnWidth = Columns(ColNo).ColumnWidth - 0.1 Wend While Columns(ColNo + 1).Left - Columns(ColNo).Left + 0.1 < w Columns(ColNo).ColumnWidth = Columns(ColNo).ColumnWidth + 0.1 WendEnd SubSub SetRowHeightMM(RowNo As Long, mmHeight As Integer)' changes the row height to mmHeight If RowNo < 1 Or RowNo > 1048576 Then Exit Sub Rows(RowNo).RowHeight = Application.CentimetersToPoints(mmHeight / 10)End Sub
Quelle: hier (Angepasst an Office 2010)
Tabellenblatt anhand des Namens ermitteln
Tabellenblatt anhand des Namens ermitteln
Public Function getWorksheetbyName(strTabName As String, Optional bCreateIfNotExists = True) As Worksheet Dim ws As Worksheet Dim bFound As Boolean bFound = FalseFor Each ws In ActiveWorkbook.Sheets If ws.Name = strTabName Then Set getWorksheetbyName = ws bFound = True Exit For End IfNextIf bFound = False And bCreateIfNotExists = True Then Sheets.Add.Name = strTabName ActiveSheet.Move After:=Sheets(ActiveWorkbook.Sheets.Count) Set getWorksheetbyName = ActiveSheet End IfEnd Function
Beispiel der Anwendung - um beispielsweise den Fokus auf eine Tabelle zu setzen:
getWorksheetbyName("Question 1").Activate