Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
580to584
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
580to584
580to584
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

autom. Makroeintrag bei nicht leeren Zellen

autom. Makroeintrag bei nicht leeren Zellen
04.03.2005 13:38:58
Thomas
Hallo,
ich hab mit Hilfe des Makrorecorders ein Makro aufgenommen das automatisch Werte in bestimmte Zellen einträgt.

Sub Sollstunden_Januar()
' Sollstunden_Januar Makro
' Makro am 20.12.2004 von TRitter aufgezeichnet
' Tastenkombination: Strg+q
Range("D47") = Range("C16").Value
Range("E47") = Range("E16").Value
Range("F47") = Range("G16").Value
Range("G47") = Range("I16").Value
Range("H47") = Range("K16").Value
Range("I47") = Range("M16").Value
Range("K47") = Range("C16").Value
Range("L47") = Range("E16").Value
Range("M47") = Range("G16").Value
Range("N47") = Range("I16").Value
Range("O47") = Range("K16").Value
Range("P47") = Range("M16").Value
Range("R47") = Range("C16").Value
Range("S47") = Range("E16").Value
Range("T47") = Range("G16").Value
Range("U47") = Range("I16").Value
Range("V47") = Range("K16").Value
Range("W47") = Range("M16").Value
Range("Y47") = Range("C16").Value
Range("Z47") = Range("E16").Value
Range("AA47") = Range("G16").Value
Range("AB47") = Range("I16").Value
Range("AC47") = Range("K16").Value
Range("AD47") = Range("M16").Value
Range("AF47") = Range("C16").Value
End Sub

Kann ich nun das so einrichten das wenn in der Zelle ein Wert oder aber auch ein Wort, also irgendwas steht, er nichts einträgt und mir stattdessen ein Popup-Fenster bringt, in dem er den Hinweis bringt das eine Zelle nicht leer war? Die genaue Zelle brauch ich nicht, das ist überschaubar...
Eine andere Frage wäre noch das ich mir eine Tastenkombination einrichten könnte mit der ich automatisch in der Zelle A1 lande?
Danke wieder mal im Voraus...
MfG aus Berlin
Thomas

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zu 2.)
04.03.2005 15:05:48
WernerB.
Hallo Thomas,
die Tastenkombination gibt es schon:
Strg+Pos1
Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
AW: autom. Makroeintrag bei nicht leeren Zellen
04.03.2005 15:10:05
Serge
Hallo Thomas versuch es mal so:
Application.Goto Reference:="R1C1"
If ActiveCell.Value = 0 Then
MsgBox "Zelle " & ActiveCell.Address(0, 0) & " ist leer"
Else
Application.Goto Reference:="R2C1"
Wenn A1 leer dann Meldung sonst A2
Serge
AW: autom. Makroeintrag bei nicht leeren Zellen
04.03.2005 15:20:00
Thomas
Danke für die Tastenkombination...
Zu der Sache mit den nichtleeren Zellen:
Excel sollte mir ja im Bereich D47 - AF47 die Werte aus den Zellen C16 - M16 eintragen (am geposteten Beispiel).
Nun hätte ich gern das wenn eine Zelle im Bereich D47 - AF47 nicht leer ist, Excel ein MsgBox aufklappt das eine Zelle im Zielbereich nicht leer ist. Diese nichtleere Zelle soll Excel dann nicht laut Makro beschreiben, sondern mit dem bereits vorhandenen Inhalt einfach so lassen. Die anderen leeren Zellen sollte jedoch laut Makro ausgefüllt werden.
Geht das?
MfG aus Berlin
Thomas
Anzeige
AW: autom. Makroeintrag bei nicht leeren Zellen
05.03.2005 15:51:59
WernerB.
Hallo Thomas,
wie gefällt Dir das?

Sub Sollstunden_Januar()
' Sollstunden_Januar Makro
' Makro am 20.12.2004 von TRitter aufgezeichnet
' Tastenkombination: Strg+q
Dim i As Byte, j As Byte, _
b As Boolean
Application.ScreenUpdating = False
j = 1
For i = 4 To 9
j = j + 2
If Cells(47, i).Value = "" Then
Cells(47, i).Value = Cells(16, j).Value
Else
b = True
End If
Next i
j = 1
For i = 11 To 16
j = j + 2
If Cells(47, i).Value = "" Then
Cells(47, i).Value = Cells(16, j).Value
Else
b = True
End If
Next i
j = 1
For i = 18 To 23
j = j + 2
If Cells(47, i).Value = "" Then
Cells(47, i).Value = Cells(16, j).Value
Else
b = True
End If
Next i
j = 1
For i = 25 To 30
j = j + 2
If Cells(47, i).Value = "" Then
Cells(47, i).Value = Cells(16, j).Value
Else
b = True
End If
Next i
If Range("AF47").Value = "" Then
Range("AF47").Value = Range("C16").Value
Else
b = True
End If
Application.ScreenUpdating = True
If b = True Then
MsgBox "Mindestens eine Zelle war nicht leer !", vbInformation, _
"Dezenter Hinweis für " & Application.UserName & ":"
End If
End Sub

Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Anzeige

327 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige