Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1552to1556
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
Meldung bei ausgeblendeten Spalten
18.04.2017 10:33:20
Josef
Guten Tag liebe Excelgemeinde,
ich möchte, dass beim Öffnen einer Exceldatei geprüft wird, ob in irgendeiner Tabelle eine oder mehrere Spalten ausgeblendet sind. Es sollte dann die Meldung kommen (namentliche Registernennung) in welcher Tabelle sich solche Spalten befinden. Da ich leider keinerlei Kenntnisse (nur mit Rekorder) in VBA habe, bitte ich um eine passende Lösung. Ich bedanke mich in diesem Sinne auch für meine früheren Fragen/Beiträge, die von den hier anwesenden Experten immer äußerst freundlich und kompetent behandelt wurden.
Also im Voraus ein recht herzliches Dankeschön an alle und einen freundlichen Gruß aus Regensburg
Josef Schindler

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Meldung bei ausgeblendeten Spalten
18.04.2017 10:58:56
ChrisL
Hi Josef
Ich habe den Bereich auf UsedRange (benutzter Bereich) eingeschränkt d.h. es werden nicht alle Spalten durchsucht, sondern nur diejenigen, welche Daten enthalten.
Sub t()
Dim ws As Worksheet, i As Long
Dim str As String
For Each ws In ThisWorkbook.Worksheets
For i = 1 To ws.UsedRange.Columns.Count
If ws.Columns(i).EntireColumn.Hidden = True Then _
str = str & Chr(10) & ws.Name & " Spalte " & Chr(i + 64)
Next i
Next ws
If str  "" Then MsgBox "Folgende Spalten sind ausgeblendet: " & str
End Sub

cu
Chris
Anzeige
AW: Meldung bei ausgeblendeten Spalten
18.04.2017 11:58:05
Werner
Hallo Chris,
lese hier mit, weil mich das auch interessiert.
Deine Ausgabe der Spalte in der MessageBox ist ja eine "Draufgabe" deinerseits.
Aber das funktioniert mit Chr(i + 64) nur bei Spaltenbuchstaben bis Spalte Z, oder sehe ich da was falsch?
Ich hab mal ein wenig im Archiv gestöbert und für die Umwandlung von der Spaltennummer in den Spaltenbuchstaben folgende Version von Luschi gefunden (ich möchte mich nicht mit fremden Federn schmücken).
Was hälst du davon?
Public Sub aaa()
Dim wsBlatt As Worksheet, i As Long
Dim strSpalte As String
Dim strSPBuchstabe As String
Dim strAdresse As String
For Each wsBlatt In ThisWorkbook.Worksheets
For i = 1 To wsBlatt.UsedRange.Columns.Count
If wsBlatt.Columns(i).EntireColumn.Hidden = True Then
strAdresse = Cells(1, i).Address(True, False)
strSPBuchstabe = Left(strAdresse, InStr(1, strAdresse, "$") - 1)
strSpalte = strSpalte & Chr(10) & wsBlatt.Name & " Spalte " & strSPBuchstabe
End If
Next i
Next wsBlatt
If strSpalte  "" Then MsgBox "Folgende Spalten sind ausgeblendet: " & Chr(10) & strSpalte
End Sub
Gruß Werner
Anzeige
AW: Meldung bei ausgeblendeten Spalten
18.04.2017 12:54:32
ChrisL
Hi Werner
Stimmt. Darüber habe ich mir gar keine Gedanken gemacht.
Die Lösung scheint mir zweckmässig. Hier noch ein anderer Ansatz:
Sub t()
MsgBox SpaltenIndex2Text(28)
End Sub

Private Function SpaltenIndex2Text(intSpalte As Integer) As String
Dim int1 As Integer, int2 As Integer
int1 = Int(intSpalte / 27)
int2 = intSpalte - (int1 * 26)
If int1 > 0 Then SpaltenIndex2Text = Chr(int1 + 64)
SpaltenIndex2Text = SpaltenIndex2Text & Chr(int2 + 64)
End Function

cu
Chris
AW: Meldung bei ausgeblendeten Spalten
18.04.2017 11:00:59
Tino
Hallo,
kannst mal so versuchen.
kommt als Code in DieseArbeitsmappe
Option Explicit 

Private Sub Workbook_Open()
Dim sTabNamen As String
sTabNamen = Check_Not_Visible
If sTabNamen <> "" Then
MsgBox sTabNamen, vbInformation, "Ausgeblendete Spalten in ..."
End If
End Sub
kommt als Code in Modul1
Option Explicit 

Function Check_Not_Visible() As String
Dim oWS As Worksheet
Dim rngTmp As Range
Dim sTabName As String

On Error Resume Next
For Each oWS In ThisWorkbook.Worksheets
Set rngTmp = oWS.Cells.SpecialCells(xlCellTypeVisible)
If rngTmp.Columns.Count < oWS.Columns.Count Then
sTabName = sTabName & oWS.Name & vbCr
End If
Next

If sTabName <> "" Then sTabName = Left$(sTabName, Len(sTabName) - 1)
Check_Not_Visible = sTabName
End Function
Gruß Tino
Anzeige
AW: Meldung bei ausgeblendeten Spalten
18.04.2017 11:08:51
UweD
Hallo
wenn nicht nach Zeilen / Spalten unterschieden werden muss dann ggf. so.

Sub fhfg()
Dim TB, Anzahl As Integer
For Each TB In Sheets
Anzahl = TB.UsedRange.Cells.Count - _
TB.UsedRange.SpecialCells(xlCellTypeVisible).Cells.Count
If Anzahl  0 Then
MsgBox "Blatt '" & TB.Name & "' enthält ausgeblendete Elemente"
End If
Next
End Sub
LG UweD
AW: Meldung bei ausgeblendeten Spalten
18.04.2017 11:21:53
UweD
Hier nur auf Spalten bezogen
gehört ins Codemodul "DieseArbeitsmappe"
Option Explicit 
 
Private Sub Workbook_Open() 
    Dim TB, Anzahl As Integer 
    For Each TB In Sheets 
        Anzahl = TB.Columns.Count - _
             TB.Rows(1).SpecialCells(xlCellTypeVisible).Count 
        If Anzahl <> 0 Then 
            MsgBox "Blatt '" & TB.Name & "' enthält ausgeblendete Spalten" 
        End If 
    Next 
End Sub 

LG UweD
Anzeige
AW: gern geschehen mwt
19.04.2017 10:49:16
UweD
da du dich ja im neuen Beitrag erklärt hast...

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige