{"id":55000703,"date":"2025-12-01T00:00:00","date_gmt":"2025-12-01T00:00:00","guid":{"rendered":"http:\/\/access-basics.de\/703"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"VBA_basics_Fehlerbehandlung_mit_VBA","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html","title":{"rendered":"VBA [basics]: Fehlerbehandlung mit VBA"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg04.met.vgwort.de\/na\/3e84588b942f473d9085080c3e2511f0\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p class='introduction'>Auch bei sorgf&auml;ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst&auml;ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f&uuml;hren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f&uuml;hren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf&auml;hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels findest Du in der Datenbank <b>VBABasics_DebuggenImVBAEditor.accdb<\/b>.<\/p>\n<h2>Was ist ein Laufzeitfehler?<\/h2>\n<p>Ein Laufzeitfehler tritt auf, wenn ein VBA-Befehl w&auml;hrend der Ausf&uuml;hrung nicht korrekt ausgef&uuml;hrt werden kann. Typische Beispiele sind der Zugriff auf ein nicht vorhandenes Objekt, eine Division durch Null oder das &Ouml;ffnen einer Datei, die nicht existiert.<\/p>\n<p>Ohne Fehlerbehandlung zeigt Access in solchen F&auml;llen eine Fehlermeldung an und bricht die Ausf&uuml;hrung der aktuellen Prozedur ab. F&uuml;r den Entwickler ist das beim Testen hilfreich, f&uuml;r den sp&auml;teren Einsatz einer Anwendung jedoch meist unerw&uuml;nscht.<\/p>\n<h2>Beispiel f&uuml;r einen Laufzeitfehler<\/h2>\n<p>Das klassische Beispiel f&uuml;r einen Laufzeitfehler ist die Division durch 0. Hier haben wir einfach eine Anweisung erstellt, die den Wert <b>1 <\/b>durch den Wert <b>0 <\/b>dividiert, was zu einem Fehler mit der Nummer <b>11 <\/b>und der Fehlermeldung <b>Division durch Null <\/b>f&uuml;hrt.<\/p>\n<p>F&uuml;hren wir diese Anweisung aus, erhalten wir als Erstes eine Meldung mit dem entsprechenden Fehler. Wir k&ouml;nnen dann auf <b>Beenden <\/b>oder <b>Debuggen <\/b>klicken. Mit Beenden wird die Prozedur beendet, ein Klick auf Debuggen &ouml;ffnet den VBA-Editor und zeigt die fehlerhafte Anweisung mit einer gelben Markierung an (siehe Bild 1).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_703_001.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_703_001.png\" alt=\"Klassischer Fehler ohne Behandlung\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Klassischer Fehler ohne Behandlung<\/p>\n<h2>Warum Fehlerbehandlung wichtig ist<\/h2>\n<p>Eine saubere Fehlerbehandlung sorgt daf&uuml;r, dass Deine Anwendung auch bei unerwarteten Situationen kontrolliert reagiert. Statt eines abrupten Abbruchs kannst Du dem Benutzer eine verst&auml;ndliche Meldung anzeigen, Ressourcen freigeben oder alternative Programmpfade w&auml;hlen.<\/p>\n<p>Wichtig ist dabei die Unterscheidung zwischen Debugging und Fehlerbehandlung. Debugging dient der Entwicklung und Analyse von Code &#8211; siehe Artikel <b>VBA [basics]: Debuggen im VBA-Editor <\/b>(<b>www.access-basics.de\/684<\/b>). Fehlerbehandlung hingegen ist daf&uuml;r gedacht, den Code im produktiven Betrieb stabil und robust zu machen.<\/p>\n<h2>Eingebaute Fehlerbehandlung deaktivieren<\/h2>\n<p>Die einfachste, aber nicht besonders professionelle Art, einen Laufzeitfehler zu verhindern, ist das vorherige Ausf&uuml;hren der folgenden Anweisung:<\/p>\n<pre>On Error Resume <span style=\"color:blue;\">Next<\/span><\/pre>\n<p>Wenn diese vor einer Zeile platziert wird, die einen Laufzeitfehler ausl&ouml;st, wird die fehlerhafte Zeile schlicht &uuml;bergangen:<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>FehlerOhneBehandlung()\r\n     On Error Resume <span style=\"color:blue;\">Next<\/span>\r\n     <span style=\"color:blue;\"><span style=\"color:blue;\">Debug.Print<\/span><\/span> 1 \/ 0\r\n     <span style=\"color:blue;\"><span style=\"color:blue;\">Debug.Print<\/span><\/span> \"War da ein Fehler?\"\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Wir erhalten dann direkt die Ausgabe der zweiten <b>Debug.Print<\/b>-Anweisung.<\/p>\n<p>Es kann aber sein, dass dadurch wichtige Zuweisungen oder Aktionen, die im weiteren Verlauf wichtig sind, nicht ausgef&uuml;hrt werden und anschlie&szlig;end zu logischen Fehlern oder weiteren Laufzeitfehlern f&uuml;hren.<\/p>\n<h2>Fehler nach On Error Resume Next analysieren<\/h2>\n<p>Manchmal m&ouml;chte man aber sogar, dass eine solche Zeile &uuml;bersprungen wird, um anschlie&szlig;end zu pr&uuml;fen, ob sie einen vorhersehbaren Fehler ausgel&ouml;st hat. Dann k&ouml;nnen wir in der folgenden Zeile pr&uuml;fen, ob es einen Fehler gegeben hat. Dazu untersuchen wir den Wert der Klasse <b>Err<\/b>. Diese liefert verschiedene Informationen, zum Beispiel die Fehlernummer und die Fehlerbeschreibung. Die folgende Prozedur &uuml;bergeht die fehlerhafte Zeile und gibt anschlie&szlig;end beide Informationen aus:<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>FehlerMitOnErrorResumeNext()\r\n     On Error Resume <span style=\"color:blue;\">Next<\/span>\r\n     <span style=\"color:blue;\"><span style=\"color:blue;\">Debug.Print<\/span><\/span> 1 \/ 0\r\n     <span style=\"color:blue;\"><span style=\"color:blue;\">Debug.Print<\/span><\/span> Err.Number, Err.Description\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Das Ergebnis lautet:<\/p>\n<pre>11           Division durch Null<\/pre>\n<p>Wir erhalten also die gleichen Informationen, die wir ohne <b>On Error Resume Next<\/b> in der eingebauten Fehlermeldung erhalten h&auml;tten. Ein Beispiel f&uuml;r einen solchen Fehler, den wir anschlie&szlig;end auf diese Weise analysieren k&ouml;nnen, ist das Hinzuf&uuml;gen eines Datensatzes zu einer Tabelle mit einem eindeutigen Index, wobei wir dem indizierten Feld einen bereits vorhandenen Datensatz hinzuf&uuml;gen (siehe Bild 2).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_703_002.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_703_002.png\" alt=\"Tabelle mit einem eindeutig indizierten Feld\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 2: Tabelle mit einem eindeutig indizierten Feld<\/p>\n<p>In der Prozedur aus Listing 1 deaktivieren wir die eingebaute Fehlerbehandlung und f&uuml;hren dann mit der <b>Execute<\/b>-Methode eine <b>INSERT INTO<\/b>-Anweisung aus, welche die Kategorie aus <b>strKategorie <\/b>zur Tabelle <b>tblKategorien <\/b>hinzuf&uuml;gt.<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>FehlerMitDoppeltemIndex()\r\n     <span style=\"color:blue;\">Dim <\/span>db<span style=\"color:blue;\"> As <\/span>DAO.Database\r\n     <span style=\"color:blue;\">Dim <\/span>strKategorie<span style=\"color:blue;\"> As String<\/span>\r\n     \r\n     <span style=\"color:blue;\">Set<\/span> db = CurrentDb\r\n     strKategorie = \"B&uuml;cher\"\r\n     \r\n     On Error Resume <span style=\"color:blue;\">Next<\/span>\r\n     db.Execute \"INSERT INTO tblKategorien(Kategorie) VALUES('\" & strKategorie & \"')\", dbFailOnError\r\n     <span style=\"color:blue;\">If <\/span>Err.Number = 3022<span style=\"color:blue;\"> Then<\/span>\r\n         <span style=\"color:blue;\">MsgBox<\/span> \"Die Kategorie '\" & strKategorie & \"' ist bereits vorhanden.\"\r\n     <span style=\"color:blue;\">End If<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p class='imagetext'>Listing 1: Diese Prozedur l&ouml;st einen Fehler aus, wenn eine bereits vorhandene Kategorie erneut angelegt wird.<\/p>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Access &#091;basics&#093;<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000\"><a style=\"color: #ff0000\" href=\"https:\/\/shop.minhorst.com\/magazine\/282\/access-basics?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000\">Danach greifen Sie sofort auf <strong>alle rund 400 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000703\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Passwort<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Angemeldet bleiben<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/index.php\/data\/wp\/v2\/posts\/55000703?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000703\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"2bf0b8f22f\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Anmelden\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Auch bei sorgf&auml;ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst&auml;ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f&uuml;hren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f&uuml;hren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf&auml;hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"footnotes":""},"categories":[662025,66062025,44000011],"tags":[],"class_list":["post-55000703","post","type-post","status-publish","format-standard","hentry","category-662025","category-66062025","category-VBAGrundlagen"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"Auch bei sorgf\u00e4ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst\u00e4ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f\u00fchren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f\u00fchren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf\u00e4hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Andr\u00e9 Minhorst\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Access [basics] - DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]\" \/>\n\t\t<meta property=\"og:description\" content=\"Auch bei sorgf\u00e4ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst\u00e4ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f\u00fchren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f\u00fchren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf\u00e4hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<meta property=\"og:image:width\" content=\"400\" \/>\n\t\t<meta property=\"og:image:height\" content=\"127\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-12-01T00:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"-001-11-30T00:00:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Auch bei sorgf\u00e4ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst\u00e4ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f\u00fchren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f\u00fchren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf\u00e4hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#blogposting\",\"name\":\"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]\",\"headline\":\"VBA [basics]: Fehlerbehandlung mit VBA\",\"author\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"http:\\\/\\\/vg04.met.vgwort.de\\\/na\\\/3e84588b942f473d9085080c3e2511f0\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html\\\/#articleImage\"},\"datePublished\":\"2025-12-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"inLanguage\":\"de-DE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#webpage\"},\"articleSection\":\"2025, 6\\\/2025, VBA-Grundlagen\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-basics.de\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2025#listItem\",\"name\":\"2025\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2025#listItem\",\"position\":2,\"name\":\"2025\",\"item\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2025\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2025\\\/6\\\/2025#listItem\",\"name\":\"6\\\/2025\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2025\\\/6\\\/2025#listItem\",\"position\":3,\"name\":\"6\\\/2025\",\"item\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2025\\\/6\\\/2025\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#listItem\",\"name\":\"VBA [basics]: Fehlerbehandlung mit VBA\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2025#listItem\",\"name\":\"2025\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#listItem\",\"position\":4,\"name\":\"VBA [basics]: Fehlerbehandlung mit VBA\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2025\\\/6\\\/2025#listItem\",\"name\":\"6\\\/2025\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"url\":\"https:\\\/\\\/access-basics.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/access-basics.de\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/logo400.png\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html\\\/#organizationLogo\",\"width\":400,\"height\":127},\"image\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\",\"url\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Andr\\u00e9 Minhorst\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#webpage\",\"url\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html\",\"name\":\"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]\",\"description\":\"Auch bei sorgf\\u00e4ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst\\u00e4ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f\\u00fchren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f\\u00fchren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf\\u00e4hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/VBA_basics_Fehlerbehandlung_mit_VBA.html#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"datePublished\":\"2025-12-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#website\",\"url\":\"https:\\\/\\\/access-basics.de\\\/\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]","description":"Auch bei sorgf\u00e4ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst\u00e4ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f\u00fchren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f\u00fchren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf\u00e4hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.","canonical_url":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#blogposting","name":"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]","headline":"VBA [basics]: Fehlerbehandlung mit VBA","author":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"publisher":{"@id":"https:\/\/access-basics.de\/#organization"},"image":{"@type":"ImageObject","url":"http:\/\/vg04.met.vgwort.de\/na\/3e84588b942f473d9085080c3e2511f0","@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html\/#articleImage"},"datePublished":"2025-12-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00","inLanguage":"de-DE","mainEntityOfPage":{"@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#webpage"},"isPartOf":{"@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#webpage"},"articleSection":"2025, 6\/2025, VBA-Grundlagen"},{"@type":"BreadcrumbList","@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/access-basics.de\/#listItem","position":1,"name":"Home","item":"https:\/\/access-basics.de\/","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2025#listItem","name":"2025"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2025#listItem","position":2,"name":"2025","item":"https:\/\/access-basics.de\/index.php\/category\/2025","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2025\/6\/2025#listItem","name":"6\/2025"},"previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2025\/6\/2025#listItem","position":3,"name":"6\/2025","item":"https:\/\/access-basics.de\/index.php\/category\/2025\/6\/2025","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#listItem","name":"VBA [basics]: Fehlerbehandlung mit VBA"},"previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2025#listItem","name":"2025"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#listItem","position":4,"name":"VBA [basics]: Fehlerbehandlung mit VBA","previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2025\/6\/2025#listItem","name":"6\/2025"}}]},{"@type":"Organization","@id":"https:\/\/access-basics.de\/#organization","name":"Access [basics]","description":"DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","url":"https:\/\/access-basics.de\/","logo":{"@type":"ImageObject","url":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html\/#organizationLogo","width":400,"height":127},"image":{"@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author","url":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","width":96,"height":96,"caption":"Andr\u00e9 Minhorst"}},{"@type":"WebPage","@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#webpage","url":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html","name":"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]","description":"Auch bei sorgf\u00e4ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst\u00e4ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f\u00fchren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f\u00fchren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf\u00e4hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/access-basics.de\/#website"},"breadcrumb":{"@id":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html#breadcrumblist"},"author":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"creator":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"datePublished":"2025-12-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00"},{"@type":"WebSite","@id":"https:\/\/access-basics.de\/#website","url":"https:\/\/access-basics.de\/","name":"Access [basics]","description":"DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","inLanguage":"de-DE","publisher":{"@id":"https:\/\/access-basics.de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"Access [basics] - DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","og:type":"article","og:title":"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]","og:description":"Auch bei sorgf\u00e4ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst\u00e4ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f\u00fchren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f\u00fchren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf\u00e4hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.","og:url":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html","og:image":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","og:image:secure_url":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","og:image:width":400,"og:image:height":127,"article:published_time":"2025-12-01T00:00:00+00:00","article:modified_time":"-001-11-30T00:00:00+00:00","twitter:card":"summary_large_image","twitter:title":"VBA [basics]: Fehlerbehandlung mit VBA - Access [basics]","twitter:description":"Auch bei sorgf\u00e4ltig geschriebenem Code lassen sich Laufzeitfehler nicht vollst\u00e4ndig vermeiden. Dateien fehlen, Daten sind unerwartet leer oder Benutzer f\u00fchren Aktionen in einer anderen Reihenfolge aus als vorgesehen. Damit solche Situationen nicht zum Abbruch der Anwendung f\u00fchren, stellt VBA verschiedene Mechanismen zur Fehlerbehandlung bereit. In diesem Artikel lernst Du die grundlegenden Techniken der Fehlerbehandlung kennen und erf\u00e4hrst, wie Du sie sinnvoll und strukturiert in Deinen Prozeduren einsetzt.","twitter:image":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png"},"aioseo_meta_data":{"post_id":"55000703","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2026-02-08 18:53:38","updated":"2026-10-19 17:33:56","focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/index.php\/category\/2025\" title=\"2025\">2025<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/index.php\/category\/2025\/6\/2025\" title=\"6\/2025\">6\/2025<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tVBA &#91;basics&#93;: Fehlerbehandlung mit VBA\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/access-basics.de\/"},{"label":"2025","link":"https:\/\/access-basics.de\/index.php\/category\/2025"},{"label":"6\/2025","link":"https:\/\/access-basics.de\/index.php\/category\/2025\/6\/2025"},{"label":"VBA [basics]: Fehlerbehandlung mit VBA","link":"https:\/\/access-basics.de\/index.php\/VBA_basics_Fehlerbehandlung_mit_VBA.html"}],"_links":{"self":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000703","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/comments?post=55000703"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000703\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000703"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000703"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000703"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}