Avatar billede HPA Juniormester
01. oktober 2019 - 15:20 Der er 8 kommentarer

Betinget formatering som del af anden makro

Hej.

Jeg er ved at lave et spørgeskema, hvor brugeren til slut trykker på en knap for at afslutte. Den virker således at er alle spørgsmål udfyldt laves et PDF print og mangler der nogle svar kommer der en input box op og brugeren vender tilbage til skemaet.

jeg kunne dog godt tænke mig at de celler hvor der ikke er indtatstet svar bliver markeret med rød og at dette fungerer som en del af makroen jf. ovenfor.

Jeg har prøvet lidt frem og tilbage, men synes ikke jeg kan få det til at virke.
Nogen gode bud?

Min makro er pt således (unden formatering):

Sub SaveAsPDF_Click()

ActiveSheet.Unprotect

    Dim svar As Single
    svar = Range("E6")
   
   
    If svar <> 1 Then
    Ufrm_finish.Show
   
    [b]  'Her skulle den betinget formatering komme ind

    Else

    Dim FileAndLocation As Variant
    Dim strPathLocation As String
    Dim strFilename As String
    Dim strPathFile As String

    strPathLocation = Worksheets("Ark1").Range("C2").Value
    strFilename = Worksheets("Ark1").Range("C3").Value
    strPathFile = strPathLocation & strFilename

    FileAndLocation = Application.GetSaveAsFilename _
    (InitialFileName:=strPathLocation & strFilename, _
    filefilter:="PDF Files (*.pdf), *.pdf", _
    Title:="Select Folder and FileName to save")

        If FileAndLocation <> "False" Then
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        strPathLocation & strFilename & ".pdf" _
        , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=False
        End If

    End If

ActiveSheet.Protect

End Sub
Avatar billede Jan K Ekspert
01. oktober 2019 - 23:11 #1
Prøv med niget i denne stil

Range("e1:e11").Select
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=e1="""""
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 255
    End With
    Selection.FormatConditions(1).StopIfTrue = False

Ret range(e1:e11) til det område, hvor dine svar står og
Formula1:="=e1=""""" til at referere til den første celle i dette område
Avatar billede HPA Juniormester
02. oktober 2019 - 08:09 #2
Hej Jan.

Tak for dit input.
Denne havde jeg prøvet men det virker desværre ikke.
Jeg har lige prøvet at kopiere din kode ind også - samme resultat.

Tomme felter bliver ikke røde.
Avatar billede Jan K Ekspert
02. oktober 2019 - 11:12 #3
Har du prøvet om koden virker, hvis du bare kører den uden for din egen makro?
Avatar billede stan Novice
03. oktober 2019 - 12:58 #4
Jeg har måske forkert, men jeg føler, at dit problem kunne løses ved blot at fjerne $ foran 31 i din formel.
Så efter at have kopieret det, behøver du ikke at ændre det.
Jeg tror endda, at du ikke engang skulle kopiere det: det ville være nok for dig at udvide området for feltet "Gælder for".



see: https://bluestacks.vip/ , https://kodi.software/ & https://luckypatcher.pro/
Avatar billede HPA Juniormester
03. oktober 2019 - 14:15 #5
Jeg kan godt få koden til at virke uden for makroen, men kun hvis jeg opretter det i en ny fil.
Jeg kan ikke få det til at fungere i min eksisterende fil - kan der være noget der blokerer?
Jeg får følgende fejl:Run-time error '1104': Application-defined or object-defined error.
Avatar billede HPA Juniormester
03. oktober 2019 - 14:20 #6
Jeg tror jeg har fundet ud af hvorfor den debugger.
Jeg har nogle skjulte rækker (som kun kommer frem, hvis man svarer ja på et andet spørgsmål)

Hvordan kommer jeg forbi det...?
Avatar billede Jan K Ekspert
03. oktober 2019 - 16:05 #7
Godt spørgsmål. Så skal jeg nok se filen, men desværre er jeg uden internetadgang det næste tre uger. Beklager.
Avatar billede HPA Juniormester
11. oktober 2019 - 09:50 #8
Jeg har filen, men hvordan sender jeg den her?
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

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



IT-JOB

Saab Danmark A/S

Infrastructure Architect

Optum Computational Engineering ApS

SW developer

Udviklings- og Forenklingsstyrelsen

Systemejer med teknisk flair