Avatar billede KenneyD71 Nybegynder
05. juli 2015 - 07:55 Der er 3 kommentarer og
1 løsning

VBA Ignorér bestemt type af fejl eller alle fejl

Jeg har en kode der kører en Text to columns.
En af kolonnerne indeholder data, derfor får jeg fejlen:
"There's already data here. Do you want to replace it".

"ok" - "Cancel"

Den fejl kunne jeg godt tænke mig at acceptere med noget i stil ala

hvis fejl "there's aldready data" then accept eller
Ignorer alle fejl og eksekver eller
et forslag der er bedre

Er der nogle, der kan hjælpe med den subrutine?


MIN KODE:


Sub Open_sessions()

Workbooks.Open Filename:=CStr(Environ("USERPROFILE")) & "\Documents\sessions.csv"

Call Text_To_Columns

End Sub
ub Text_To_Columns()

    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
        Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
        Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1 _
        ), Array(14, 1), Array(15, 1)), TrailingMinusNumbers:=True


End Sub
Avatar billede natkatten Mester
05. juli 2015 - 08:56 #1
Nu er det ikke en fejl, men en advarsel om, at du er i færd med at overskrive et område, hvor der i forvejen er data.

Hvis du er helt sikker på, at disse meddelelser skal undertrykkes, så kan du skrive:

Application.DisplayAlerts = False

før koden. Dvs. i dit tilfælde i starten af Sub'en Text_To_Columns

Du skal så før du forlader denne Sub skrive:

Application.DisplayAlerts = True

for igen at få vist advarsler.

Alternativt kan du hver gang slette indholdet af kolonne A, således at dette er tomt. Dvs. så kommer der ikke advarsler.
Avatar billede KenneyD71 Nybegynder
05. juli 2015 - 09:45 #2
Tak skal du have natkatten. Lige hvad jeg havde brug for.

Ved du om det er muligt at undertrykke en udvalgt advarsel?

Du må gerne hente dine point.
Avatar billede natkatten Mester
05. juli 2015 - 10:28 #3
Et svar.

Umiddelbart mener jeg ikke, at Application.DisplayAlerts kan benyttes til at undertrykke udvalgte advarsler. Den kan kun arbejde med værdierne True eller False. Men specielt i større Subs (eller ved kald af andre Subs) kan man med fordel slå den til og fra flere gange, og på denne måde undertrykke de relevante fejlmeddelelser.
Avatar billede KenneyD71 Nybegynder
05. juli 2015 - 18:19 #4
Tak for info og hjælpen.

God tanke at slå advarsler til og fra flere gange.
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