Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Kontrolle ob Zelle ausgefüllt | Herbers Excel-Forum


Betrifft: Kontrolle ob Zelle ausgefüllt von: Badi
Geschrieben am: 10.12.2009 13:24:12

Hallo zusammen

dank euch konnte ich mir folgendes Script basteln:

Sub Verschieben2010()
Dim wks2 As Worksheet
Dim lgLetzte As Long
Dim intFrage As Integer
Set wks2 = Sheets("Erledigte Aufträge 2010")
intFrage = MsgBox("Ausgewählte Zeile wirklich in erledigte Aufträge 2010 verschieben?", vbYesNo, _
 "Rückfrage")
If intFrage = 7 Then
Exit Sub
End If
lgLetzte = wks2.[a65536].End(xlUp).Row + 1
Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 9)).Copy wks2.Cells(lgLetzte, 1)
wks2.Cells(lgLetzte, 9).Cut Destination:=wks2.Cells(lgLetzte, 9)
Rows(ActiveCell.Row).Delete
End Sub


Nun sollte ich aber noch abfragen ob in der ausgewählten Zeile die Spalten C-I auch einen Inhalt haben.
Wenn nein sollte das Script mit einer Meldung abgebrochen werden.

Mit den Treffern in der Suchfunktion konnte ich leider zu wenig anfangen.
Besten Dank für eure Hilfe
Badi

  

Betrifft: AW: Kontrolle ob Zelle ausgefüllt von: welga
Geschrieben am: 10.12.2009 13:43:29

Hallo,

versuch mal das. Ist aber ungetestet.

Sub Verschieben2010()
Dim wks2 As Worksheet
Dim lgLetzte As Long
Dim intFrage As Integer
dim i as long
dim a as boolean
Set wks2 = Sheets("Erledigte Aufträge 2010")
intFrage = MsgBox("Ausgewählte Zeile wirklich in erledigte Aufträge 2010 verschieben?", vbYesNo, _
 _
 "Rückfrage")
If intFrage = 7 Then
Exit Sub
End If
lgLetzte = wks2.[a65536].End(xlUp).Row + 1
a=false
for i =3 to 9
if cells(activecell.row,i).value<>"" then a=true
if a=false then 
MsgBox("Leere Zelle!")
exit sub
end if
next i
Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 9)).Copy wks2.Cells(lgLetzte, 1)
wks2.Cells(lgLetzte, 9).Cut Destination:=wks2.Cells(lgLetzte, 9)
Rows(ActiveCell.Row).Delete
End Sub
Gruß
welga


  

Betrifft: AW: Kontrolle ob Zelle ausgefüllt von: Rudi Maintaire
Geschrieben am: 10.12.2009 13:48:17

Hallo,

Sub Verschieben2010()
  Dim wks2 As Worksheet
  Dim lgLetzte As Long
  Dim intFrage As Integer
  Set wks2 = Sheets("Erledigte Aufträge 2010")
  intFrage = MsgBox("Ausgewählte Zeile wirklich in erledigte Aufträge 2010 verschieben?",  _
vbYesNo, _
  "Rückfrage")
  If intFrage = 7 Then
  Exit Sub
  End If
  If Application.CountA(Cells(ActiveCell.Row, 3).Resize(, 7)) < 7 Then
    MsgBox "Nicht alles gefüllt"
    Exit Sub
  End If
  lgLetzte = wks2.[a65536].End(xlUp).Row + 1
  Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 9)).Copy wks2.Cells(lgLetzte, 1)
  wks2.Cells(lgLetzte, 9).Cut Destination:=wks2.Cells(lgLetzte, 9)
  Rows(ActiveCell.Row).Delete
End Sub

Gruß
Rudi


  

Betrifft: AW: Kontrolle ob Zelle ausgefüllt von: Badi
Geschrieben am: 10.12.2009 14:11:06

Hallo zusammen

besten Dank für die schnelle Hilfe
Klappt bestens mit Rudi's Script

Danke...


Beiträge aus den Excel-Beispielen zum Thema "Kontrolle ob Zelle ausgefüllt"