Avatar billede lail Forsker
14. januar 2020 - 15:09 Der er 5 kommentarer

msgbox

Jeg har en knap i et regneark

Når jeg trykker på knappen skal jeg tjekke om nogle celle er tomme
Hvis de er tom skal man blive på pågældende ark og få en besked(msgbox)

Hvis den ikke er tom skal den åbne nogle nye ark og hoppe til næste ark( denne del er lavet. Men ved ikke hvordan man gør det øverste med msgbox

Nogen der vil hjælpe??

LN
Avatar billede store-morten Ekspert
14. januar 2020 - 19:25 #1
Er cellerne rigtige tomme?
Avatar billede store-morten Ekspert
14. januar 2020 - 19:37 #2
Sub TestCellA1()

  If IsEmpty(Range("A1").Value) = True Then
      MsgBox "Celle A1 er tom"
  Else
      MsgBox "Celle A1 er ikke tom"
  End If

End Sub
Avatar billede store-morten Ekspert
14. januar 2020 - 19:52 #3
Sub CelleTjek()
'Eksempler på kontrol af celleværdier

Dim rCell As Range
Dim sMyString As String

On Error GoTo ErrorHandle

'Vi sætter vores range-variabel
'til celle A1 i det aktive ark.
Set rCell = Range("A1")

'Den følgende kontrol tester, om en celle er tom.
'Det gør den ved at se på længden af det, som måske
'står i cellen. Derfor bruges egenskaben "Formula"
'i stedet for "Value". Hvis man brugte "Value",
'ville den sige, at cellen er tom, selvom der
'måske er ét eller flere mellemrum/blanke.
If Len(rCell.Formula) = 0 Then
  MsgBox "Celle " & rCell.Address & " er tom."
End If

'Samme kontrol kan laves med VBA-funktionen IsEmpty.
'IsEmpty returnerer True, hvis cellen er tom.
'Det er en smartere kontrol end ovenfor, når det
'drejer sig om en celles indhold, men ikke hvis
'der var tale om f.eks. en streng-variabel.
If IsEmpty(rCell) Then
  MsgBox "Celle " & rCell.Address & " er tom."
End If

'Den følgende kontrol tjekker, om cellen indeholder
'et tal - altså om værdien er numerisk.
If IsNumeric(rCell.Value) Then
  MsgBox "Celle " & rCell.Address & " er en talværdi."
End If

'Denne kontrol undersøger, om en celle indeholder en
'fejlværdi. Det kan f.eks. være division med nul eller
'en formel, som indeholder en ikke eksisterende
'henvisning (f.eks. navn).
If IsError(rCell.Value) Then
  MsgBox "Celle " & rCell.Address & " indeholder en fejl."
End If

'Denne kontrol undersøger, om en celle
'(eller et udtryk) indeholder en dato.
If IsDate(rCell.Value) Then
  MsgBox "Celle " & rCell.Address & " indeholder en dato."
End If

'Den følgende kontrol tjekker, om en celle indeholder tekst.
'Hvis det ikke er en numerisk værdi og hvis cellen ikke
'indeholder en fejl som f.eks. division med nul, regner
'vi med, at det er en tekst af datatypen String. Datoer kan
'også opfattes som tekst, så hvis man vil have dem sorteret
'fra, må man indføje "IsDate(rCell.Value) = False" i
'sin kontrol.
If IsNumeric(rCell.Value) = False And _
IsError(rCell.Value) = False Then
  'VBA-funktionen Trim fjerner blanke (mellemrum) foran og
  'bagefter. Hvis indholdets længde derefter er 0, har
  'indholdet været lutter blanke/mellemrum.
  sMyString = Trim(rCell.Value)
  If Len(sMyString) > 0 Then
      MsgBox "Celle " & rCell.Address & " er en tekst med " & _
      Len(sMyString) & " karakterer."
  Else
      MsgBox "Cellens indhold er blanke mellemrum"
  End If
End If

'Kontrollerer om en celle har betinget formatering
If rCell.FormatConditions.Count > 0 Then
  MsgBox rCell.Address & " har betinget formatering."
Else
  MsgBox "Ikke betinget formatering."
End If

'Undersøger om en celle indeholder en formel.
If rCell.HasFormula Then
  MsgBox "Celle " & rCell.Address & " indeholder en formel."
Else
  MsgBox "Cellen indeholder ikke en formel."
End If

'Kontrollerer om cellen har en kommentar.
If rCell.Comment Is Nothing Then
  MsgBox rCell.Address & " har ikke en kommentar."
Else
  MsgBox rCell.Address & " har en kommentar."

End If

BeforeExit:
Set rCell = Nothing
Exit Sub
ErrorHandle:
MsgBox Err.Description & " Fejl i procedure CelleTjek."
Resume BeforeExit
End Sub
Avatar billede store-morten Ekspert
14. januar 2020 - 22:27 #4
Sub videre()
'
' Makro1 Makro denne makro bringer dig fra forudsætnnger til nødvendige ark der skal benyttes
''
'åbner rekevante ark
Application.ScreenUpdating = False ' gør at excel ikke blinker

'MsgBox ("HUSK at udfylde alle Hvide celler")'besked til brugeren hvis ikke alle felter er udfyldt
  If IsEmpty(Range("C5").Value) = True Then
      MsgBox "HUSK at udfylde alle Hvide celler", , "Udfyldt af:"
        Exit Sub
  End If
    If IsEmpty(Range("C6").Value) = True Then
      MsgBox "HUSK at udfylde alle Hvide celler", , "Dato (dd-mm-aaaa):"
        Exit Sub
  End If
    If IsEmpty(Range("C7").Value) = True Then
      MsgBox "HUSK at udfylde alle Hvide celler", , "Uddannelse:"
        Exit Sub
  End If
      If IsEmpty(Range("K5").Value) = True Then
      MsgBox "HUSK at udfylde alle Hvide celler", , "Budgetansvarlig:"
        Exit Sub
  End If
Avatar billede lail Forsker
14. januar 2020 - 23:19 #5
Ser lige på det når det andet problem er løst 😱
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester