4.1k Aufrufe
Gefragt in Tabellenkalkulation von noldi Mitglied (477 Punkte)
Hallo zusammen

Ich habe mal wieder was im Kopf und müsste wissen ob das
Funktionieren kann.

Habe folgende Formel:

=WENN(Daten!B8>0;Daten!B8;"") funktioniert super. Diese steht in 53
Tabellenblätter auf A6.
In der Spalte B6 (B+C Zelle verbunden) steht ein Text bsw. O/K.
Ist es möglich eine Formel so zu schreiben das wenn A6 kein Inhalt hat
auch diese in B6 Automatisch löscht. In B6 sollte keine Formel stehen da
dort ja geschrieben wird.
Ich verwende Excel für Mac. Dort kann ich unter Formel verschiedene
Sachen auswählen z.B. steht unter Text =SÄUBERN.

Danke für Eure Tipps

Gruß Noldi

17 Antworten

0 Punkte
Beantwortet von noldi Mitglied (477 Punkte)
Hallo M.O.

Zur ersten Frage: Ja die Namen stehen immer an gleicher stelle von 1 Woche bis U-Tage.
Zur zweiten frage: Nein die Überschrift ist nicht notwendig.

Danke
Gruß Noldi
0 Punkte
Beantwortet von noldi Mitglied (477 Punkte)
Hi

Nochmals ich

Korrektur: Die Namen stehen nur von 1Woche bis 53Woche in der gleiche Spalte.

Gruß Noldi
0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo Noldi,

probier mal das folgende Makro aus. Der Name des Mitarbeiters / Mitarbeiterin darf erst gelöscht werden, wenn das Makro durchgelaufen ist.
Das Makro ist in ein allgemeines Modul zu kopieren:

Sub daten_leoschen()

Dim bs, blatt, zeile, spalte As Long
Dim loeschname As String
Dim rueckgabe

'Prüfen, ob Name, der zu löschen ist, noch existiert
If IsEmpty(Cells(ActiveCell.Row, 2)) = True Then
MsgBox "Die Zeile enthält keinen Namen! - Abbruch!", vbOKOnly, "Fehler!"
Exit Sub
End If

'zu löschender Name wird in Variable geschrieben
loeschname = Cells(ActiveCell.Row, 2)


'Falls eine Zeile kleiner als 8 ausgewählt wird, erfolgt Abbruch
If ActiveCell.Row < 8 Then
MsgBox "Bitte wählen Sie eine zulässige Zeile (8 oder höher - außer 24) aus!", vbOKOnly, "Fehler!"
Exit Sub
End If

'Rückfrage, ob auch wirklich gelöscht werden soll
rueckgabe = MsgBox("Sollen alle Daten von " & loeschname & " aus den Wochenblättern gelöscht werden?", vbYesNo, "Frage")

'Makro beenden, falls Rückfrage mit nein beantwortet wird
If rueckgabe = vbNo Then Exit Sub

'Bildschirmaktualisierung ausschalten:
Application.ScreenUpdating = False

'automatische Berechnung ausschalten
Application.Calculation = xlManual

'Daten in Wochenblättern löschen
For blatt = 1 To ThisWorkbook.Worksheets.Count

If Right(Worksheets(blatt).Name, 5) = "Woche" Then 'nur die Wochenblätter ansprechen

'Prüfen ob Variable mit zeile bereits größer 0 und falls nicht Zeile mit zu löschendem Namen suchen
If zeile = 0 Then
'Zeile suchen, in der der Name steht
For zeile = 6 To Worksheets(blatt).UsedRange.SpecialCells(xlCellTypeLastCell).Row
If Worksheets(blatt).Cells(zeile, 1) = loeschname Then Exit For
Next zeile
End If

For spalte = 1 To Worksheets(blatt).UsedRange.SpecialCells(xlCellTypeLastCell).Column
'Daten werden mit "" überschrieben, da verbundene Zellen vorhanden sind
If Worksheets(blatt).Cells(zeile, spalte).HasFormula = False Then Worksheets(blatt).Cells(zeile, spalte).Value = ""
If Worksheets(blatt).Cells(zeile + 1, spalte).HasFormula = False Then Worksheets(blatt).Cells(zeile + 1, spalte).Value = ""
Next spalte

End If

Next blatt

'automatische Berechnung einschalten:
Application.Calculation = xlAutomatic

'Bildschirmaktualisierung einschalten:
Application.ScreenUpdating = True

MsgBox "Daten wurden gelöscht! Sie können den Namen nun löschen", vbOKCancel, "Hinweis"

End Sub


Probiere es aber erst einmal in einer Testdatei aus.

Gruß

M.O.
0 Punkte
Beantwortet von noldi Mitglied (477 Punkte)
Hallo M.O.

das ist ja der Wahnsinn.

Das Makro läuft super, vielen vielen Dank.
Ich muss noch eine Option wissen. Ich weiss das ich hier keine andere Frage wie zu dem Thema stellen sollte.
Wie kann ich das anstellen, das ich nicht immer den Umweg Über Menü Extras Makro, Makro Ausführen machen muss?
Es gibt doch die Möglichkeit zu dem Modul eine Art Button (UserForm) zu erstellen den ich dann auf dem Tabellenblatt "Daten" ablegen kann.
Aber wie?

Danke noch mal für das Makro echt super

Gruß Noldi
0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo Noldi,

freut mich, dass das Makro so funktioniert, wie du willst.

Eine Anleitung zum Einfügen einer Schaltfläche findest du z.B. hier: Schaltfläche.

Gruß

M.O.
0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo,

noch mal ich :-).

Diese Anleitung ist besser geeignet. Ab Punkt 6: Schaltfläche 2.

Gruß

M.O.
0 Punkte
Beantwortet von noldi Mitglied (477 Punkte)
Hallo M.O.

Habe alles am laufen. Button funktioniert auch bestens.

Danke für die Professionelle Hilfe.

Bis bald

Gruß Noldi
...