{"id":5719,"date":"2023-04-25T12:49:27","date_gmt":"2023-04-25T03:49:27","guid":{"rendered":"https:\/\/okamurax.com\/?p=5719"},"modified":"2023-04-25T12:49:27","modified_gmt":"2023-04-25T03:49:27","slug":"vba-%e8%ab%8b%e6%b1%82%e6%9c%9f%e9%96%93%e3%82%92%e8%a8%88%e7%ae%97","status":"publish","type":"post","link":"https:\/\/appbay.org\/?p=5719","title":{"rendered":"VBA \u8acb\u6c42\u671f\u9593\u3092\u8a08\u7b97"},"content":{"rendered":"<p>\u30de\u30b9\u30bf\u306e\u7de0\u65e5\u3001\u73fe\u5728\u306e\u65e5\u4ed8\u304b\u3089\u8acb\u6c42\u671f\u9593\u3001\u652f\u6255\u4e88\u5b9a\u65e5\u3092\u8a08\u7b97\u3002<\/p>\n<pre class=\"lang:vb decode:true \">Sub GetInvoiceTerm()\r\n\r\n' \u30c1\u30a7\u30c3\u30af\r\n\r\nIf False = IsDate(UserForm1.TextBox49.Text) Then Exit Sub\r\nIf False = IsNumeric(UserForm1.TextBox50.Text) Then Exit Sub\r\nIf False = IsNumeric(UserForm1.TextBox51.Text) Then Exit Sub\r\n\r\ncurrent_date = CDate(UserForm1.TextBox49.Text) ' \u4eca\u56de\u306e\u7de0\u65e5\r\nmaster_closing_date = CInt(UserForm1.TextBox50.Text) ' \u5f97\u610f\u5148\u7de0\u65e5\r\npayment_duration = CInt(UserForm1.TextBox51.Text) ' \u652f\u6255\u4e88\u5b9a(\u7d4c\u904e\u65e5\u6570)\r\n\r\nstart_day = \"\"\r\nend_day = \"\"\r\n\r\nIf master_closing_date &lt;&gt; \"30\" Then\r\n\r\n' \u672b\u7de0\u4ee5\u5916\r\n\r\n  If CInt(Day(current_date)) &gt; CInt(master_closing_date) Then\r\n  \r\n      tmp = DateAdd(\"m\", 1, current_date)\r\n      \r\n      start_day = Year(current_date) &amp; \"\/\" &amp; Month(current_date) &amp; \"\/\" &amp; master_closing_date + 1\r\n      end_day = Year(tmp) &amp; \"\/\" &amp; Month(tmp) &amp; \"\/\" &amp; master_closing_date\r\n      \r\n  Else\r\n  \r\n      tmp = DateAdd(\"m\", -1, current_date)\r\n      \r\n      start_day = Year(tmp) &amp; \"\/\" &amp; Month(tmp) &amp; \"\/\" &amp; master_closing_date + 1\r\n      end_day = Year(current_date) &amp; \"\/\" &amp; Month(current_date) &amp; \"\/\" &amp; master_closing_date\r\n      \r\n  End If\r\n    \r\nElse\r\n\r\n' \u672b\u7de0\u306e\u5834\u5408\r\n\r\n  start_day = Year(current_date) &amp; \"\/\" &amp; Month(current_date) &amp; \"\/1\"\r\n  end_day = Year(current_date) &amp; \"\/\" &amp; Month(current_date) &amp; \"\/\" &amp; GetLastDay(current_date)\r\n        \r\nEnd If\r\n\r\nIf False = IsDate(start_day) Or False = IsDate(end_day) Then\r\n\r\n' \u5f97\u610f\u5148\u7de0\u65e5\u306e\u5024\u304b\u3089start_day\u3001end_day\u304c\u6709\u52b9\u306a\u65e5\u4ed8\u306b\u306a\u3089\u306a\u304b\u3063\u305f\u5834\u5408\r\n\r\n  UserForm1.TextBox41.Text = \"\"\r\n  UserForm1.TextBox46.Text = \"\"\r\n  UserForm1.TextBox44.Text = \"\"\r\n  \r\n  Exit Sub\r\n\r\nEnd If\r\n\r\nUserForm1.TextBox41.Text = Format(CDate(start_day), \"yyyy\/mm\/dd\")\r\nUserForm1.TextBox46.Text = Format(CDate(end_day), \"yyyy\/mm\/dd\")\r\n\r\n' \u652f\u6255\u671f\u9650\u7b97\u51fa--------------------------------------------------------\r\n\r\n' \u652f\u6255\u4e88\u5b9a(\u7d4c\u904e\u65e5\u6570)\u309230\u3067\u5272\u308a\u00d7\u6708\u3001\u4f59\u308a\u00d7\u65e5\r\n\r\nm = payment_duration \/ 30\r\nd = payment_duration Mod 30\r\n  \r\nIf True = IsLastDay(CDate(end_day)) Then\r\n \r\n' end_day\u304c\u6708\u672b\u306e\u5834\u5408\u306f\u6307\u5b9a\u3057\u305f\u6708\u6570\u3092\u52a0\u7b97\u3057\u6708\u672b\u306b\u3059\u308b\u3002\r\n\r\n  tmp1 = DateAdd(\"m\", m, CDate(end_day))\r\n  tmp1 = CDate(Year(tmp1) &amp; \"\/\" &amp; Month(tmp1) &amp; \"\/\" &amp; GetLastDay(tmp1))\r\n  tmp2 = DateAdd(\"d\", d, tmp1)\r\n\r\nElse\r\n\r\n' end_day\u304c\u6708\u672b\u4ee5\u5916\r\n\r\n  tmp1 = DateAdd(\"m\", m, CDate(end_day))\r\n  tmp2 = DateAdd(\"d\", d, tmp1)\r\n\r\nEnd If\r\n\r\nUserForm1.TextBox44.Text = Format(tmp2, \"yyyy\/mm\/dd\")\r\n  \r\nEnd Sub\r\n\r\nFunction IsLastDay(target) ' \u6e21\u3055\u308c\u305f\u65e5\u4ed8\u304c\u6708\u672b\u304b\u3069\u3046\u304b\r\n\r\n' \u547c\u51fa\u5074\u3067\u65e5\u4ed8\u578b\u304b\u78ba\u8a8d\u6e08\r\n\r\nIf Day(target) = GetLastDay(target) Then\r\n  IsLastDay = True\r\nElse\r\n  IsLastDay = False\r\nEnd If\r\n\r\nEnd Function\r\n\r\nFunction GetLastDay(target) ' \u6e21\u3055\u308c\u305f\u65e5\u4ed8\u306e\u6708\u306e\u6708\u672b\u3092\u53d6\u5f97\r\n\r\n' \u547c\u51fa\u5074\u3067\u65e5\u4ed8\u578b\u304b\u78ba\u8a8d\u6e08\r\n\r\nGetLastDay = Day(DateAdd(\"d\", -1, Year(DateAdd(\"m\", 1, target)) &amp; \"\/\" &amp; Month(DateAdd(\"m\", 1, target)) &amp; \"\/1\"))\r\n\r\nEnd Function\r\n\r\n\r\n<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u30de\u30b9\u30bf\u306e\u7de0\u65e5\u3001\u73fe\u5728\u306e\u65e5\u4ed8\u304b\u3089\u8acb\u6c42\u671f\u9593\u3001\u652f\u6255\u4e88\u5b9a\u65e5\u3092\u8a08\u7b97\u3002 Sub GetInvoiceTerm() &#8216; \u30c1\u30a7\u30c3\u30af If False = IsDate(UserForm1.TextBox49.Text) Then Exit &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/appbay.org\/?p=5719\" class=\"more-link\"><span class=\"screen-reader-text\">&#8220;VBA \u8acb\u6c42\u671f\u9593\u3092\u8a08\u7b97&#8221; \u306e<\/span>\u7d9a\u304d\u3092\u8aad\u3080<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[5],"class_list":["post-5719","post","type-post","status-publish","format-standard","hentry","category-1","tag-vba"],"_links":{"self":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/5719","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5719"}],"version-history":[{"count":1,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/5719\/revisions"}],"predecessor-version":[{"id":5720,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/5719\/revisions\/5720"}],"wp:attachment":[{"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5719"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5719"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5719"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}