Frage : Nur erste 5 Spalten löschen

Hallo Kerle,

I morgens noch arbeitend an diesem Makro, das gerade zum twik es eine Spitze versucht. (traurig für den Messiness meines Kommentierens)

Is dort eine Weise kann ich Linie 23 erhalten, um die ersten 6 Spalten auf verwendeten Daten nur zu überprüfen?  Ich wünsche formals in Spalte G einsetzen, aber, sobald ich tue, fangen die Daten an, von unterhalb meiner niedrigsten Formel zu bevölkern.

Cheers,
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
 ' dieses Unterseeboot class= " muss in die Codescheibe für das Kalenderarbeitsblatt angebracht werden. Es funktioniert nicht an allen, wenn es irgendwoanders angebracht wird.
Privates VorWorksheet_Activate ()
Schwaches WS als Arbeitsblatt, wsCalendar als Arbeitsblatt
Schwaches rg als Strecke, rgDest als Strecke
Schwaches n als lang
'Application.ScreenUpdating = falsch
Gesetztes wsCalendar = Arbeitsblätter („Kalender“)
wsCalendar.Range („a2“, „f10000“). Freier Raum
'wsCalendar.Rows (2).Resize (wsCalendar.Rows.Count - 1).ClearContents
'wsCalendar.Rows.ClearContents
Für jedes WS in ThisWorkbook.Worksheets
    Fall WS vorwählen. Name
    „Kalender“ umkleiden, „Haupt“, „Funktions-Raum“ 'ignorieren diese Arbeitsblätter
    Sonst umkleiden
        Mit WS
            'WS. Aktivieren
            Rg einstellen =. Strecke („B4“). Die Größe neu bestimmen (.UsedRange.Rows.Count, 5) 'Blick auf Spalten B: F, beginnend in Reihe 4
            Wenn (nicht ist zu schneiden (rg, .UsedRange) nichts) und (rg. Zellen (2, 1) <> "") dann
                'rg.AutoFilter Feld: =2, Criteria1: = " <= " u. (Datum + 5), Operator: =xlAnd, Criteria2: = " >= " u. (Datum - 5)
                'sein muss US-Datumformat
                heute = Format (Datum, „MillimeterdD-yyyy“)
                rg.AutoFilter Feld: =2, Criteria1: = " >= " u. heute ', Operator: =xlAnd, Criteria2: = " >= " u. plus5days
                Gesetztes rgDest = wsCalendar.Cells (wsCalendar.UsedRange.Rows.Count + wsCalendar.UsedRange.Row, 2)
                .AutoFilter.Range.Copy rgDest
                n = wsCalendar.UsedRange.Rows.Count + wsCalendar.UsedRange.Row - rgDest.Row
                rgDest.Offset (0, -1). Die Größe neu bestimmen (n, 1).Value = WS. Name
                rgDest.Rows (1).EntireRow.Delete
                . Strecke („B4“) .AutoFilter
            Beenden wenn
        Mit beenden
    Auserwähltes beenden
Zunächst
Application.ScreenUpdating = richten aus
Enden-Unterseeboot

Antwort : Nur erste 5 Spalten löschen

Viele Male erhalten Sie #Name mit allgemeinen Funktionen wie Datum (), Len ()… usw., wenn… ein Hinweis fehlt.

VBA Herausgeber >> Tools>>References.  Nach irgendwie aufgeführtes wie suchen
** Verfehlend

MX
Weitere Lösungen  
 
programming4us programming4us