<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3989070786935313594</id><updated>2024-10-06T21:32:39.152-07:00</updated><category term="VBA tutorial"/><category term="VBA Code"/><category term="Introduction"/><category term="Functions"/><category term="Data Types"/><category term="Template"/><category term="Statements"/><category term="Operator"/><category term="Variables"/><category term="Recording"/><category term="Methods"/><category term="Properties"/><category term="Visual Basic Editor"/><category term="Workbooks"/><category term="Add"/><category term="Array"/><category term="Declaration"/><category term="Dim"/><category term="Folder"/><category term="HTML"/><category term="Hyperlink"/><category term="Sort"/><category term="And"/><category term="Boolean"/><category term="Byte"/><category term="Constant"/><category term="Contact Me"/><category term="Conversion"/><category term="Currency"/><category term="Date"/><category term="Debug print"/><category term="Debugging"/><category term="Decimal"/><category term="Developer tab"/><category term="Do...Loop"/><category term="Double"/><category term="Eqv"/><category term="Find"/><category term="For Each...Next"/><category term="For...Next"/><category term="Formula"/><category term="Glossary"/><category term="Goto"/><category term="Hlookup"/><category term="IF...Then...Else"/><category term="Imp"/><category term="InStr"/><category term="InStrRev"/><category term="Integer"/><category term="Intellisense menu"/><category term="Is"/><category term="IsArray"/><category term="IsDate"/><category term="IsEmpty"/><category term="IsError"/><category term="IsMissing"/><category term="IsNull"/><category term="IsNumeric"/><category term="IsObject"/><category term="Join"/><category term="LBound"/><category term="Lcase"/><category term="Like"/><category term="Long"/><category term="LongLong"/><category term="LongPtr"/><category term="MkDir"/><category term="Mod"/><category term="Not"/><category term="Null"/><category term="Object"/><category term="Objects"/><category term="Objects - Cells"/><category term="Objects - Range"/><category term="Option Explicit"/><category term="Or"/><category term="Private"/><category term="Protect Sheet"/><category term="Public"/><category term="Range Method"/><category term="Redim"/><category term="Redim Preserve"/><category term="SaveAs"/><category term="Scroll"/><category term="Security"/><category term="Select Case"/><category term="Single"/><category term="Specification"/><category term="StrConv"/><category term="String"/><category term="Sub"/><category term="Type"/><category term="Ubound"/><category term="Ucase"/><category term="User defined"/><category term="Variant"/><category term="Vlookup"/><category term="Xor"/><title type='text'> Visual Basic for Application</title><subtitle type='html'>Visual Basic for Application &amp;amp; Excel Formula Collection</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>110</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-5482607042023764665</id><published>2023-02-25T07:19:00.003-08:00</published><updated>2023-02-25T07:19:17.105-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Conversion"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Types"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>Data type - Type conversion functions</title><content type='html'>&lt;p&gt;Type conversion functions&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Each function
coerces or forces an expression to a specific data type. The expression 
will be converted to a specific data type. For example, &lt;b&gt;CBool(&lt;span style=&quot;font-style: italic;&quot;&gt;expression&lt;/span&gt;)&lt;/b&gt;. This function converted
expression to a Boolean data type which is TRUE or FALSE with condition expression
is a numeric or valid string, otherwise Rune-time error &#39;13&#39;: Type mismatch. The function name determines the return type as shown in the following:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;center&gt;&lt;table border=&quot;1&quot; bordercolor=&quot;#000000&quot; cellpadding=&quot;3&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 500px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; width=&quot;25%&quot;&gt;&lt;b&gt; Function&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;&lt;b&gt; Returns the expression converted to a&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CBool&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Boolean data type (Boolean).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CByte&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Byte data type (Byte).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CCur&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Currency data type (Currency).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CDate&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Date data type (Date).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CDbl&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Double data type (Double).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CDec&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Decimal data type (Decimal).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CInt&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Integer data type (Integer).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CLng&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Long data type (Long).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CLngLng&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;LongLong data type (LongLong).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CLngPtr&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;LongPtr data type (LongPtr).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CSng&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Single data type (Single).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CStr&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;String data type (String).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: left;&quot; width=&quot;25%&quot;&gt;CVar&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;75%&quot;&gt;Variant data type (Variant).&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub ExampleTypeOfConverstion()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print CBool(1) &#39;Return True&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print CBool(0) &#39;Return False&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print CBool(-1) &#39;Return True&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print CBool(100) &#39;Return True&lt;br /&gt;&#39;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print CBool(&quot;TEST&quot;) &#39;Rune-time error &#39;13&#39;: Type mismatch&lt;br /&gt;&lt;br /&gt;End Sub&lt;/div&gt;

Read more about &lt;b&gt; Type conversion functions&lt;/b&gt;, excel training beginners, coding in vba, &lt;br /&gt;
excel training online, visual basic for applications at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/concepts/getting-started/type-conversion-functions&quot; target=&quot;_blank&quot; title=&quot;Type-conversion-functions&quot;&gt;Microsoft Reference-Type-conversion-functions&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/data-types-category.htm&quot; target=&quot;_blank&quot; title=&quot;Data-types-category&quot;&gt;Other Reference-Data-types-category&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/5482607042023764665/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2023/02/data-type-type-conversion-functions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/5482607042023764665'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/5482607042023764665'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2023/02/data-type-type-conversion-functions.html' title='Data type - Type conversion functions'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-974338774644663398</id><published>2023-01-16T06:48:00.000-08:00</published><updated>2023-01-16T06:48:16.843-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data Types"/><category scheme="http://www.blogger.com/atom/ns#" term="Type"/><category scheme="http://www.blogger.com/atom/ns#" term="User defined"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>Data type - User defined</title><content type='html'>&lt;p&gt;&lt;b&gt;User defined&lt;/b&gt; data type can be any data type using a &lt;b&gt;Type statement&lt;/b&gt; which
 is more related to groups of variables. Declaration must be done at 
module level above the sub procedure, otherwise compile error: Invalid 
inside procedure as below.&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Syntax :&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Type MyType&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Field1 as Any Data type&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Field2 as Any Data type&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;.&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;.&lt;br /&gt;End Type&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;The above syntax must be declare at module level and below statement is inside sub procedure.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Dim MyVar as MyType&lt;/b&gt;&lt;/p&gt;&lt;p&gt;From here we can access Field1,Field2,... and etc.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Refer below for example:&lt;/u&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Type MyDetails&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Myname As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyAge As Integer&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyBirthDate As Date&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyMarried As Boolean&lt;br /&gt;End Type&lt;br /&gt;Sub DataTypeExample_UserDefined()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyBio As MyDetails&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyBio.Myname = &quot;Nazri&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyBio.MyAge = 50&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyBio.MyBirthDate = &quot;05/06/1978&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyBio.MyMarried = True&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox (&quot;My name is &quot; &amp;amp; MyBio.Myname &amp;amp; &quot; my age is &quot; &amp;amp; _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyBio.MyAge &amp;amp; &quot; and married is &quot; &amp;amp; MyBio.MyMarried)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;This User defined data type is more to static, we can&#39;t changed this inside our code only at design stage.&lt;br /&gt;&lt;/p&gt;
Read more about &lt;b&gt; User defined data type&lt;/b&gt;, macro enabled excel, excel macro, &lt;br /&gt;
vba coding, vba code at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/how-to/user-defined-data-type&quot; target=&quot;_blank&quot; title=&quot;User-defined-data-type&quot;&gt;Microsoft Reference-User-defined-data-type&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/data-types/user-defined-types.htm&quot; target=&quot;_blank&quot; title=&quot;User-defined-types.htm&quot;&gt;Other Reference-User-defined-types.htm&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/974338774644663398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2023/01/data-type-user-defined.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/974338774644663398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/974338774644663398'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2023/01/data-type-user-defined.html' title='Data type - User defined'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-1337095107962583596</id><published>2023-01-07T06:30:00.006-08:00</published><updated>2023-01-07T06:33:23.171-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data Types"/><category scheme="http://www.blogger.com/atom/ns#" term="Object"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>Data type - Object</title><content type='html'>&lt;p&gt;Object data type is refer to any objects in excel and store as 32-bit (4-byte) and Set statement must be use after declares otherwise Run-time error &#39;91&#39;: Object variable or with block variable not set in syntax.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; Dim MyVar as Object&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set MyVar = Object&lt;/p&gt;&lt;p&gt;Object can be any objects assigned to it for example: Workbook, Worksheet, Chart and etc&lt;br /&gt; (Refer below link for Object model).&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Below Example is to check whether active sheet is empty or not? &lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub ToCheckActiveSheetEmpty()&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyWS As Worksheet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyRng As Range&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set MyWS = ActiveSheet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set MyRng = MyWS.UsedRange&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If WorksheetFunction.CountA(MyRng) = 0 And _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyWS.Shapes.Count = 0 Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox &quot;Sheet &quot; &amp;amp; &quot;&quot;&quot;&quot; &amp;amp; MyWS.Name &amp;amp; &quot;&quot;&quot;&quot; &amp;amp; &quot; is empty&quot;, _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vbInformation, &quot;https://mrvba.blogspot.com&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox &quot;Sheet &quot; &amp;amp; &quot;&quot;&quot;&quot; &amp;amp; MyWS.Name &amp;amp; &quot;&quot;&quot;&quot; &amp;amp; &quot;&amp;nbsp; is not empty&quot;, _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vbInformation, &quot;https://mrvba.blogspot.com&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; There are 2 objects inside the example. 1st Worksheet and 2nd is Range.&lt;/p&gt;
Read more about &lt;b&gt; Object data type&lt;/b&gt;, excel training beginners, coding in vba, &lt;br /&gt;
excel training online, visual basic for applications at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/object-data-type&quot; target=&quot;_blank&quot; title=&quot;Object-data-type&quot;&gt;Microsoft Reference-Object-data-type&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/api/overview/excel/object-model&quot; target=&quot;_blank&quot; title=&quot;Object-model&quot;&gt;Microsoft Reference-Object-model&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/1337095107962583596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2023/01/data-type-object.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/1337095107962583596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/1337095107962583596'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2023/01/data-type-object.html' title='Data type - Object'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-4390920721347650009</id><published>2022-12-21T06:59:00.000-08:00</published><updated>2022-12-21T06:59:10.571-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data Types"/><category scheme="http://www.blogger.com/atom/ns#" term="LongPtr"/><category scheme="http://www.blogger.com/atom/ns#" term="Variables"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>Data type - LongPtr</title><content type='html'>&lt;p&gt;&lt;b&gt;LongPtr &lt;/b&gt;data type is a variable declared type depend on platform or system used.&lt;br /&gt;&lt;b&gt;For 32-bit systems&lt;/b&gt; and the numbers ranging in value from -2,147,483,648 to 2,147,483,647 &lt;br /&gt;translate as 
&lt;b&gt;Long&lt;/b&gt;.&lt;br /&gt;&lt;b&gt;For 64-bit systems&lt;/b&gt; and the numbers ranging in value from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807&amp;nbsp; translate as &lt;b&gt;LongLong&lt;/b&gt;.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Declaration :&lt;/u&gt;&lt;/b&gt; &lt;b&gt;Dim Var as LongPtr&lt;/b&gt; &lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Where &lt;b&gt;Var&lt;/b&gt; refer as variable.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;This data type is very seldom used and this data type should be used for pointers and handles..&lt;/p&gt;&lt;p&gt;Read more about &lt;b&gt; Longptr data type&lt;/b&gt;, macro enabled excel, excel macro, &lt;br /&gt;
vba coding, vba code at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/longptr-data-type&quot; target=&quot;_blank&quot; title=&quot;Longptr-data-type&quot;&gt;Microsoft Reference-Longptr-data-type&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/numbers/longptr-data-type.htm&quot; target=&quot;_blank&quot; title=&quot;Longptr-data-type&quot;&gt;Other Reference-Longptr-data-type&lt;/a&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/4390920721347650009/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/12/data-type-longptr.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/4390920721347650009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/4390920721347650009'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/12/data-type-longptr.html' title='Data type - LongPtr'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-6042513591397331038</id><published>2022-12-21T06:37:00.004-08:00</published><updated>2022-12-21T06:44:16.244-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data Types"/><category scheme="http://www.blogger.com/atom/ns#" term="LongLong"/><category scheme="http://www.blogger.com/atom/ns#" term="Variables"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>Data type - LongLong</title><content type='html'>&lt;p&gt;&lt;b&gt;Longlong&lt;/b&gt; data type is a variable declared type only valid on &lt;b&gt;64-bit&lt;/b&gt; platforms and the numbers ranging in value from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807.&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Declaration :&lt;/u&gt;&lt;/b&gt; &lt;b&gt;Dim Var as LongLong&lt;/b&gt; or &lt;b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim Var^&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Where Var refer as variable instead of &lt;b&gt;LongLong&lt;/b&gt; we can use caret (^) to represent this data type.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;This data type is very seldom used unless we know each user what platform they use, either 32bit or 64bit system. Long data type is more flexible.&lt;br /&gt;&lt;/p&gt;
Read more about &lt;b&gt; Longlong data type&lt;/b&gt;, excelmacros, macro excel, &lt;br /&gt;
excel programming, excel vba at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/longlong-data-type&quot; title=&quot;Longlong-data-type&quot; target=&quot;_blank&quot;&gt;Microsoft Reference-Longlong-data-type&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/numbers/longlong-data-type.htm&quot; title=&quot;Longlong-data-type&quot; target=&quot;_blank&quot;&gt;Other Reference-Longlong-data-type&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any requests.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank you.&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/6042513591397331038/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/12/data-type-longlong.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/6042513591397331038'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/6042513591397331038'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/12/data-type-longlong.html' title='Data type - LongLong'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-8532240000224402366</id><published>2022-12-20T07:15:00.000-08:00</published><updated>2022-12-20T07:15:21.947-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Find"/><category scheme="http://www.blogger.com/atom/ns#" term="Range Method"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Range Method - Find</title><content type='html'>&lt;p&gt;&lt;b&gt;Range find&lt;/b&gt; is to finds specific information in a range.&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; Range.Find (What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)&lt;/p&gt;&lt;p&gt;&lt;b&gt;Returns :&lt;/b&gt; Not xxx Is Nothing(True)/Nothing(False)&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Under &lt;b&gt;find&lt;/b&gt; we have to specify &lt;b&gt;What&lt;/b&gt; is Required and the rest is optional but for me LookIn and LookAt also importance.&lt;br /&gt;LookIn:=xlFormulas, xlValues, xlComments, or xlCommentsThreaded&lt;br /&gt;LookAt:=xlWhole or xlPart&lt;/p&gt;&lt;p&gt;If the information found then we can get the 1st location only base on search direction for example row and column index. If we need to find next location then we have to combined with FindNext.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Below example will loop keyword in activesheet at column B and find this keyword in reference sheet at column E and get additional information at B and G.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub FindMyBlogLink()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim LstRow As Long&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim i As Integer, j As Integer&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim ActSht As Worksheet, RefSht As Worksheet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim FndRng As Range, FndKey As Range&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrKey As String&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;To start with active sheet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set ActSht = ActiveSheet&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;To check reference sheet available or not?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For j = 1 To Sheets.Count&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Sheets(j).Name = &quot;mrvba&quot; Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set RefSht = Sheets(&quot;mrvba&quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next j&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;If reference sheet exist then start searching for keyword&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not RefSht Is Nothing Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set FndRng = RefSht.Columns(&quot;E:E&quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LstRow = ActSht.Cells.Find(&quot;*&quot;, SearchOrder:=xlByRows, _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SearchDirection:=xlPrevious).Row + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = 2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrKey = ActSht.Range(&quot;B&quot; &amp;amp; i)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set FndKey = FndRng.Find(StrKey, LookAt:=xlWhole)&lt;br /&gt;&#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set FndKey = FndRng.Find(StrKey, LookAt:=xlPart)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not FndKey Is Nothing Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ActSht.Range(&quot;C&quot; &amp;amp; i) = RefSht.Cells(FndKey.Row, 2)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ActSht.Range(&quot;D&quot; &amp;amp; i) = RefSht.Cells(FndKey.Row, 7)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrKey = &quot;&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set FndKey = Nothing&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = i + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop Until i = LstRow&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;Exit with mesaage if reference sheet not exist.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox &quot;Sorry! Reference sheet name mrvba not found.&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Exit Sub&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode: &lt;/u&gt;&lt;/b&gt;(Sample from Microsoft with FindNext)&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Sub FindValue()&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim c As Range&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim firstAddress As String&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;To find number 2 in replace with 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; With ActiveSheet.Range(&quot;A1:A500&quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set c = .Find(2, LookIn:=xlValues)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not c Is Nothing Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; firstAddress = c.Address&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c.Value = 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print c.Address&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print c.Row&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print c.Column&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set c = .FindNext(c)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop While Not c Is Nothing&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End With&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;By using range find is much more faster than loop entire sheet looking for keyword match.&lt;br /&gt;
&lt;/p&gt;
Read more about &lt;b&gt; Excel.range.find&lt;/b&gt;, macro enabled excel, excel macro, &lt;br /&gt;
vba coding, vba code at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/api/excel.range.find&quot; target=&quot;_blank&quot; title=&quot;Excel.range.find&quot;&gt;Microsoft Reference-Excel.range.find&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/visual-basic-editor/find-and-replace-extensibility.htm&quot; target=&quot;_blank&quot; title=&quot;Find-and-replace-extensibility&quot;&gt;Other Reference-Find-and-replace-extensibility&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/8532240000224402366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/12/vba-range-method-find.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/8532240000224402366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/8532240000224402366'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/12/vba-range-method-find.html' title='VBA Range Method - Find'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-7640329932272941203</id><published>2022-12-09T06:42:00.001-08:00</published><updated>2022-12-09T20:25:41.513-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Public"/><category scheme="http://www.blogger.com/atom/ns#" term="Statements"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Statement - Public</title><content type='html'>&lt;p&gt;&lt;b&gt;Public statement&lt;/b&gt; is to declare public variables and allocate storage space at module level.Instead of using Dim Statement we can use &lt;b&gt;Public Statement&lt;/b&gt;. The 
different is Dim Statement declare inside the Sub procedure and &lt;b&gt;Public Statement&lt;/b&gt; on top of module follow by Sub procedures. The variables declare by using &lt;b&gt;Public statement&lt;/b&gt; can be use by all Sub procedures in all modules. &lt;/p&gt;&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; &lt;b&gt;Public&lt;/b&gt; &lt;i&gt;Variable Name&lt;/i&gt; &lt;b&gt;As&lt;/b&gt; &lt;i&gt;Data Type&lt;/i&gt;&lt;/p&gt;
Actually the syntax consist many optional parts but required only 2 which is &lt;b&gt;Public&lt;/b&gt; and &lt;b&gt;Variable name&lt;/b&gt;, the rest is same as &lt;b&gt;Dim Statement&lt;/b&gt; and &lt;b&gt;Private Statement&lt;/b&gt;.&lt;br /&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;The only different between Private and Public statement is &lt;strong&gt;Public statement&lt;/strong&gt; are available to all procedures in all modules but &lt;b&gt;Private statement&lt;/b&gt; is limited to procedures inside specific module where variables is declare.&lt;br /&gt;&lt;/p&gt;
Read more about &lt;b&gt; Public statement&lt;/b&gt;, excel training beginners, coding in vba, &lt;br /&gt;
excel training online, visual basic for applications at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/public-statement&quot; target=&quot;_blank&quot; title=&quot;Public-statement&quot;&gt;Microsoft Reference-Public-statement&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/variables/lifetime-scope-global-level.htm&quot; target=&quot;_blank&quot; title=&quot;Lifetime-scope-global-level&quot;&gt;Other Reference-Lifetime-scope-global-level&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/7640329932272941203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/12/vba-statement-public.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/7640329932272941203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/7640329932272941203'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/12/vba-statement-public.html' title='VBA Statement - Public'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-3523624990703665475</id><published>2022-12-09T06:28:00.001-08:00</published><updated>2022-12-09T20:25:31.028-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Private"/><category scheme="http://www.blogger.com/atom/ns#" term="Statements"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Statement - Private</title><content type='html'>&lt;p&gt;&lt;b&gt;Private statement&lt;/b&gt; is to declare private variables and allocate storage space in module level. Instead of using Dim Statement we can use Private Statement. The different is Dim Statement declare inside the Sub procedure and &lt;b&gt;Private Statement&lt;/b&gt; on top of module follow by Sub procedures. The variables declare using &lt;b&gt;Private statement&lt;/b&gt; can be use by all Sub procedures inside the module where this variables are declares. This variables can&#39;t use outside the declare module.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; &lt;b&gt;Private&lt;/b&gt; &lt;i&gt;Variable Name&lt;/i&gt; &lt;b&gt;As&lt;/b&gt; &lt;i&gt;Data Type&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Actually the syntax consist many optional parts but required only 2 which is &lt;b&gt;Private&lt;/b&gt; and &lt;b&gt;Variable name&lt;/b&gt;, the rest is same as Dim Statement.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Private MyVarA As String, MyVarB As String&lt;br /&gt;Sub Macro1()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyVarA = &quot;My Country&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; myVarB = &quot;Malaysia&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print MyVarA, myVarB&lt;br /&gt;End Sub&lt;br /&gt;Sub Macro2()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print MyVarA, myVarB&lt;br /&gt;End Sub&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;For the above example we have 2 variables &lt;b&gt;MyVarA&lt;/b&gt; and &lt;b&gt;MyVarB&lt;/b&gt;, we have 2 Sub procedures which is &lt;b&gt;Macro1&lt;/b&gt; and &lt;b&gt;Macro2&lt;/b&gt;. If we run &lt;b&gt;Macro1&lt;/b&gt; then follow by &lt;b&gt;Macro2&lt;/b&gt; by using the same variables then we get the same answer unless we reset these variables each time before exit Sub procedures. &lt;br /&gt;&lt;/p&gt;
Read more about &lt;b&gt; Private statement&lt;/b&gt;, macro enabled excel, excel macro, &lt;br /&gt;
vba coding, vba code at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/private-statement&quot; target=&quot;_blank&quot; title=&quot;Private-statement&quot;&gt;Microsoft Reference-Private-statement&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/variables/lifetime-scope-module-level.htm&quot; target=&quot;_blank&quot; title=&quot;Lifetime-scope-module-level&quot;&gt;Other Reference-Lifetime-scope-module-level&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/3523624990703665475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/12/vba-statement-private.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/3523624990703665475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/3523624990703665475'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/12/vba-statement-private.html' title='VBA Statement - Private'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-8401714182246586451</id><published>2022-12-03T06:59:00.003-08:00</published><updated>2022-12-13T06:18:29.613-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Statements"/><category scheme="http://www.blogger.com/atom/ns#" term="Sub"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Statement - Sub, Private Sub, Public Sub</title><content type='html'>&lt;p&gt;&lt;b&gt;Sub statement&lt;/b&gt; is subroutine also known as Procedures or Macros (When we record macro the default name is &lt;b&gt;Sub Macro1()&lt;/b&gt; follow by &lt;b&gt;series of code&lt;/b&gt; and close with &lt;b&gt;End Sub&lt;/b&gt;. Macro1 is the default name of procedure recorded. Same case when we create on our own.we start with Sub Procedure Name() and Close with End Sub.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Syntax :&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;Sub Procedure Name (&lt;i&gt;ArgList&lt;/i&gt;)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Exit Sub&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;End Sub&lt;/p&gt;
&lt;p&gt;Actually the syntax consist many optional parts but required only 3 which is &lt;b&gt;Sub, Procedure name&lt;/b&gt; and &lt;b&gt;End Sub&lt;/b&gt; to explain in detail refer below:&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Case Study 1:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Sub Procedure Name ()&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Call another Procedures&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;Exit Sub&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Call another Procedures&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;/p&gt;&lt;p&gt;This is the most typical of Sub Statement, it can be accessible from anywhere in the project and listed in macros and can run directly.&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Case Study 2:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Sub Procedure Name (&lt;i&gt;ByVal and ByRef Variables&lt;/i&gt;)&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Call another Procedures&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;Exit Sub&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Call another Procedures&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;/p&gt;&lt;p&gt;This Sub Statement only can be access from another Sub Statement in the project because we need to specify variables inside open and close bracket and not listed in macros.&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Case Study 3:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Public Sub Procedure Name ()&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Call another Procedures&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;Exit Sub&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Call another Procedures&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;/p&gt;&lt;p&gt;This Sub Statement same as typical Sub Statement above, it can be accessible from 
anywhere in the project and listed in macros and can run directly.&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Case Study 4:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Private Sub Procedure Name ()&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Call another Procedures&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;Exit Sub&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Statements (Code)&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Call another Procedures&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;/p&gt;&lt;p&gt;This
 Sub Statement only can be access from another Sub Statement within the &lt;b&gt;same module&lt;/b&gt; and 
not listed in macros. &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;There are another Sub which &lt;b&gt;Friend Sub&lt;/b&gt; (only class module) and &lt;b&gt;Static Sub&lt;/b&gt; (preserved variables) but seldom use for beginner.&lt;/li&gt;&lt;li&gt;The procedure name must be related with the macro task to ease accessible process and there are rules to follow ex. no space, certain characters and etc. &lt;/li&gt;&lt;/ol&gt;
Read more about &lt;b&gt; Sub statement&lt;/b&gt;, macro enabled excel, excel macro, &lt;br /&gt;
vba coding, vba code at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/sub-statement&quot; target=&quot;_blank&quot; title=&quot;Sub-statement&quot;&gt;Microsoft Reference-Sub-statement&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/macros/subroutines.htm&quot; target=&quot;_blank&quot; title=&quot;Subroutines&quot;&gt;Other Reference-Subroutines&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/8401714182246586451/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/12/vba-satement-sub-private-sub-public-sub.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/8401714182246586451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/8401714182246586451'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/12/vba-satement-sub-private-sub-public-sub.html' title='VBA Statement - Sub, Private Sub, Public Sub'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-4488270673530368350</id><published>2022-11-29T07:10:00.006-08:00</published><updated>2022-12-03T05:54:46.644-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Redim"/><category scheme="http://www.blogger.com/atom/ns#" term="Redim Preserve"/><category scheme="http://www.blogger.com/atom/ns#" term="Statements"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Statement - Redim and Redim Preserve</title><content type='html'>&lt;p&gt;Redim statement is to reallocate storage space for dynamic array variables and declare at procedure level within your Sub and End Sub. Redim statement only can be use after we declare Dim Statement for array for example Dim MyVar() As String and data remain unchanged. Array number in bracket is not specify.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; Redim &lt;i&gt;Variables Name&lt;/i&gt; As &lt;i&gt;Data Type&lt;/i&gt; &lt;b&gt;Or&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Redim Preserve &lt;i&gt;Variables Name&lt;/i&gt; As &lt;i&gt;Data Type&lt;/i&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Actually the syntax consist many optional parts but required only 2 which is &lt;b&gt;Redim&lt;/b&gt; and &lt;b&gt;Variable name&lt;/b&gt;, to explain in detail refer below:&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;Case Study 1:&lt;/b&gt;&lt;/u&gt; &lt;br /&gt;Dim myVar(5) As String &lt;br /&gt;Lower Bound (LBound) control by Option Base 1 (Declare at module level) if present then LBound = 1 otherwise 0, Upper Bound (UBound) is 5. For this case we don&#39;t have to use ReDim statement because LBound and UBound already specify. If we try to use myVar(6) or more then Run time error &#39;9&#39; : Subscript out of range. If we try to resize by using Redim myVar(6) or more then Compile error: Array already dimensioned.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;Case Study 2:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;Dim myVar(5 to 10) As String&lt;br /&gt;This case same as above except Lower bound already specify equal to 5 and Upper Bound equal to 10. Redim is not necessary.&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;u&gt;Case Study 3:&lt;/u&gt;&lt;/b&gt;&lt;br /&gt; Dim myVar() As String&lt;br /&gt;This is refer to dynamic array and Redim Statement is compulsory. For example we already Redim myVar(1) and assigned the value, later we Redim myVar(2) and assigned the value. The myVar(1) value will be deleted or erase. To avoid this we must use Redim Preserve myVar(1) and Redim Preserve myVar(2). For Redim Preserve once we reverse the sequence the data also lost for the sub sequence number.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;&lt;b&gt;Redim&lt;/b&gt; Statement - Will erase all previous data.&lt;br /&gt;&lt;b&gt;Redim Preserve&lt;/b&gt; Statement - Will not erase previous data.&lt;br /&gt;&lt;/p&gt;
Read more about &lt;b&gt; Redim statement&lt;/b&gt;, macro enabled excel, excel macro, &lt;br /&gt;
vba coding, vba code at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/redim-statement&quot; target=&quot;_blank&quot; title=&quot;Redim-statement&quot;&gt;Microsoft Reference-Redim-statement&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/arrays/redim-statement.htm&quot; target=&quot;_blank&quot; title=&quot;Redim-statement&quot;&gt;Other Reference-Redim-statement&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/arrays/redim-preserve.htm&quot; target=&quot;_blank&quot; title=&quot;Redim-preserve&quot;&gt;Other Reference-Redim-preserve&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/4488270673530368350/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-declaration-redim-and-redim.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/4488270673530368350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/4488270673530368350'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-declaration-redim-and-redim.html' title='VBA Statement - Redim and Redim Preserve'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-8766278622680923724</id><published>2022-11-24T07:02:00.011-08:00</published><updated>2022-12-03T05:54:19.095-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Dim"/><category scheme="http://www.blogger.com/atom/ns#" term="Intellisense menu"/><category scheme="http://www.blogger.com/atom/ns#" term="Introduction"/><category scheme="http://www.blogger.com/atom/ns#" term="Variables"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Statement - Dim with Intellisense menu</title><content type='html'>&lt;p&gt;&lt;u&gt;&lt;b&gt;To write Dim Statements:&lt;/b&gt;&lt;/u&gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;To make your VBA coding more easy after typing &lt;b&gt;Dim VarName As &lt;/b&gt;follow by &lt;b&gt;space-bar&lt;/b&gt; the Intellisense drop-down menu will appeared as below picture. Continue typing this Intellisense menu is giving more narrow suggestion of &lt;b&gt;Data type&lt;/b&gt; for you to select. Use mouse or arrow down key to select and press &lt;b&gt;Space-bar&lt;/b&gt; or &lt;b&gt;Tab button&lt;/b&gt; or &lt;b&gt;Mouse Double click&lt;/b&gt; to confirm.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4kUuFY99ZVxonl3xtZUo2QNGzVTg4N6LE8sgh5wPoe-ooSKGwAMbmvz-G5ZGwp2HxbiX5yHF3hZ9bAGUBNmQgeatESjXO4o-Wc6gOrlii91FWpgU9r_aUpSCP1Ps67Q0ifao1zdODKTYFJXfx2qTOrSVUM0__mOwbsrBHLV4cz3q8uAtyyye9d1vYGQ/s534/Intel%20Dim.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Intellisense menu vbe&quot; border=&quot;0&quot; data-original-height=&quot;292&quot; data-original-width=&quot;534&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4kUuFY99ZVxonl3xtZUo2QNGzVTg4N6LE8sgh5wPoe-ooSKGwAMbmvz-G5ZGwp2HxbiX5yHF3hZ9bAGUBNmQgeatESjXO4o-Wc6gOrlii91FWpgU9r_aUpSCP1Ps67Q0ifao1zdODKTYFJXfx2qTOrSVUM0__mOwbsrBHLV4cz3q8uAtyyye9d1vYGQ/s16000/Intel%20Dim.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;If the Intellisense drop-down menu not appeared just press &lt;b&gt;Ctrl + Space-Bar&lt;/b&gt; Button Or &lt;b&gt;Ctrl + J&lt;/b&gt; button. &lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;b&gt;To Access Variables in Project:&lt;/b&gt;&lt;/u&gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;Same as above just click empty area below your variables declaration just press &lt;b&gt;Ctrl + Space-Bar&lt;/b&gt; Button Or &lt;b&gt;Ctrl + J&lt;/b&gt; button. Continue typing and from drop down menu use arrow down key or mouse to select and press &lt;b&gt;Space-bar&lt;/b&gt; or &lt;b&gt;Tab button&lt;/b&gt; or &lt;b&gt;Mouse Double click&lt;/b&gt; to confirm. Refer below picture for details.&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNoyzUaKWhJsqA3fsRgQyfDVS3_EEJAoyyViStaInofeN504PkrKUQGdVyPh2VdhmKAPtOcgP6Z6vW61-o9bMetiYLhV072sFDS82brYTn_aMDzhAFO9ARBm-MQL-rSxJOmixHj8aoVzt4yWqRasVnK_6QP3vlbsWId-BptQdvkzdAInjtqLtALpqbGg/s552/Intel%20Dim2.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Intellisense menu vbe&quot; border=&quot;0&quot; data-original-height=&quot;346&quot; data-original-width=&quot;552&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNoyzUaKWhJsqA3fsRgQyfDVS3_EEJAoyyViStaInofeN504PkrKUQGdVyPh2VdhmKAPtOcgP6Z6vW61-o9bMetiYLhV072sFDS82brYTn_aMDzhAFO9ARBm-MQL-rSxJOmixHj8aoVzt4yWqRasVnK_6QP3vlbsWId-BptQdvkzdAInjtqLtALpqbGg/s16000/Intel%20Dim2.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;By using this method we reduce typo error in our coding. This Intellisense drop down menu also appear after &quot;.&quot; (Dot).&lt;br /&gt;&lt;/p&gt;
Read more about &lt;b&gt; Dim statement&lt;/b&gt;, macro enabled excel, excel macro, &lt;br /&gt;
vba coding, vba code at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/dim-statement&quot; target=&quot;_blank&quot; title=&quot;Dim-statement&quot;&gt;Microsoft Reference-Dim-statement&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/variables/declaring.htm&quot; target=&quot;_blank&quot; title=&quot;Dim-statement&quot;&gt;Other Reference-Dim-statement&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/8766278622680923724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-declaration-dim-statement-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/8766278622680923724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/8766278622680923724'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-declaration-dim-statement-with.html' title='VBA Statement - Dim with Intellisense menu'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4kUuFY99ZVxonl3xtZUo2QNGzVTg4N6LE8sgh5wPoe-ooSKGwAMbmvz-G5ZGwp2HxbiX5yHF3hZ9bAGUBNmQgeatESjXO4o-Wc6gOrlii91FWpgU9r_aUpSCP1Ps67Q0ifao1zdODKTYFJXfx2qTOrSVUM0__mOwbsrBHLV4cz3q8uAtyyye9d1vYGQ/s72-c/Intel%20Dim.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-2458459452989551652</id><published>2022-11-24T05:29:00.003-08:00</published><updated>2022-12-03T05:53:46.845-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Dim"/><category scheme="http://www.blogger.com/atom/ns#" term="Statements"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Statement - Dim</title><content type='html'>&lt;p&gt;&lt;b&gt;Dim statement&lt;/b&gt; is to declares variables and allocates storage space. For 
example Dim StrVar as String, Dim Int As integer and etc which is 
assigning any variables to data type or object.&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; &lt;b&gt;Dim&lt;/b&gt; &lt;i&gt;Variable Name&lt;/i&gt; &lt;b&gt;As&lt;/b&gt; &lt;i&gt;Data Type&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Actually the syntax consist many optional parts but required only 2 which is &lt;b&gt;Dim&lt;/b&gt; and &lt;b&gt;Variable name&lt;/b&gt;, to explain in detail refer below:&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;b&gt;Dim VarName&lt;/b&gt;&lt;br /&gt;This to declare VarName as default which is Variant.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Dim VarName as String&lt;/b&gt;&lt;br /&gt;This to declare VarName as String.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Dim VarName1 as string, VarName2 as string&lt;/b&gt;&lt;br /&gt;This to declare both VarName1 and 2 as String.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Dim VarName1,VarName2 As Integer,VarName3 as Integer&lt;/b&gt;&lt;br /&gt;This to declare VarName1 default (Variant),VarName2 as integer and VarName3 as integer.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&amp;nbsp;Basically these 4 methods we can use to declare Variables.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_DimDeclares()&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim myVar&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyVar1, MyVar2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyVar3 As String, myVar4 As Integer&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyVar5, MyVar6 As Integer, MyVar7 As String&lt;br /&gt;&lt;br /&gt;End Sub&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Don&#39;t use same Variable name with number because more likely become array. The above example just for reference.&lt;/li&gt;&lt;li&gt;If we declare Variables with same name then Compile error: Duplicate declaration in current scope.&lt;/li&gt;&lt;/ol&gt;Read more about &lt;b&gt; Dim statement&lt;/b&gt;, macro enabled excel, excel macro, &lt;br /&gt;
vba coding, vba code at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/dim-statement&quot; target=&quot;_blank&quot; title=&quot;Dim-statement&quot;&gt;Microsoft Reference-Dim-statement&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/variables/declaring.htm&quot; target=&quot;_blank&quot; title=&quot;Dim-statement&quot;&gt;Other Reference-Dim-statement&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/2458459452989551652/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-declaration-dim-statement.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/2458459452989551652'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/2458459452989551652'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-declaration-dim-statement.html' title='VBA Statement - Dim'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-8391659669229161784</id><published>2022-11-22T05:49:00.000-08:00</published><updated>2022-11-22T05:49:01.664-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="InStrRev"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA function inStrRev</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Instrrev function&lt;/b&gt; is to get the position of the first occurrence 
of one string within another. The search String is from &lt;b&gt;right to left&lt;/b&gt;
inside another String to get the position for example we wish to get the
 position of back slash &quot;\&quot; from path 
&quot;C:\Users\UserName\Desktop\MyBook.xlsx&quot;, if start from -1 then the 
position of back slash is 26 but if we start from 5 then the position is 3. &lt;br /&gt;&lt;/p&gt;
&lt;b&gt; Syntax :&lt;/b&gt; InStr(String Check, String Match, Start, Compare Value) ,&lt;b&gt; Returns :&lt;/b&gt; Long
&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;table border=&quot;1&quot; bordercolor=&quot;#000000&quot; cellpadding=&quot;3&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 600px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; width=&quot;26%&quot;&gt;&lt;b&gt;Constant&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;&lt;b&gt;Value&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;64%&quot;&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;26%&quot;&gt;vbUseCompareOption&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;-1&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;64%&quot;&gt;Performs a comparison by using the setting of the Option Compare statement.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;26%&quot;&gt;vbBinaryCompare&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;0&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;64%&quot;&gt;Performs a binary comparison.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;26%&quot;&gt;vbTextCompare&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;1&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;64%&quot;&gt;Performs a textual comparison.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;26%&quot;&gt;vbDatabaseCompare&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;2&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;64%&quot;&gt;Microsoft Access only. Performs a comparison based on information in your database.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;
&lt;p&gt;Normally for Compare Value we use 0 (case sensitive and default) or 
1.Usually we omitted this value to let default which is equal to 0 
(binary comparison). For more clear explanation refer below picture.&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhidzuS2dspP3zeddbaSsCMw2UfJQqYR5DN4vghUQwKpMCtzUQlt4GH1DgZZWM-GbV2krTbHNYSN2GMCvE0neMP6Vq6VWii4oSmFvik1dyEZCXuuX7NmePAiyP6vMY9YPGfoQgLlQEt-0Zm-fvTYpKPNwGBX5J8sgTuy-qSotb0_RrOZvFlZ_vpb_UZug/s450/InStrRev%20Diagram.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;190&quot; data-original-width=&quot;450&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhidzuS2dspP3zeddbaSsCMw2UfJQqYR5DN4vghUQwKpMCtzUQlt4GH1DgZZWM-GbV2krTbHNYSN2GMCvE0neMP6Vq6VWii4oSmFvik1dyEZCXuuX7NmePAiyP6vMY9YPGfoQgLlQEt-0Zm-fvTYpKPNwGBX5J8sgTuy-qSotb0_RrOZvFlZ_vpb_UZug/s16000/InStrRev%20Diagram.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMMPVfBG4wtesR9gyzhMKD3bxQB5aJrxKadq9ugKCtoMPysadCPmlcca3Ob1JDRWHpog1OQxxqg465aiMrlv4Smjb0Pwfc3LNRQAEHbqLQArUQzrsZj7O2sEnww3uCrqoU8X3IherZ-3WaG7_PaapWcAlBqijPaInTzA3yACmL54KsdxvDABH4kcA0VQ/s450/InStrRev%20Diagram2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;190&quot; data-original-width=&quot;450&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMMPVfBG4wtesR9gyzhMKD3bxQB5aJrxKadq9ugKCtoMPysadCPmlcca3Ob1JDRWHpog1OQxxqg465aiMrlv4Smjb0Pwfc3LNRQAEHbqLQArUQzrsZj7O2sEnww3uCrqoU8X3IherZ-3WaG7_PaapWcAlBqijPaInTzA3yACmL54KsdxvDABH4kcA0VQ/s16000/InStrRev%20Diagram2.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt; &lt;b&gt;&lt;u&gt;(&lt;/u&gt;&lt;/b&gt;Example to get Postion of Back slash \)&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_InStrrev()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrLink As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrLink = &quot;C:\Users\UserName\Desktop\MyBook.xlsx&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;To Get MyBook.xlsx from above string&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print Right(StrLink, Len(StrLink) - InStrRev(StrLink, &quot;\&quot;, -1, 1))&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;To Get xlsx from above string&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print Right(StrLink, Len(StrLink) - InStrRev(StrLink, &quot;.&quot;, -1, 1))&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_InStrrevTest()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrLink As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim iPos As Long&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrLink = &quot;C:\Users\UserName\Desktop\MyBook.xlsx&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; iPos = InStrRev(StrLink, &quot;Name&quot;, -1)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If iPos = 0 Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox &quot;Keyword Name not found.&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox &quot;Keyword Name found Start at= &quot; &amp;amp; iPos&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;Usually we use &lt;b&gt;InStrrev Function&lt;/b&gt; combine with other functions like Left,Right,Mid,Len and etc.&lt;/p&gt;
Read more about &lt;b&gt; Instrrev function&lt;/b&gt;, excel training beginners, coding in vba, &lt;br /&gt;
excel training online, visual basic for applications at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/instrrev-function&quot; target=&quot;_blank&quot; title=&quot;Instrrev-function&quot;&gt;Microsoft Reference-Instrrev-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/instrrev-function.htm&quot; target=&quot;_blank&quot; title=&quot;Instrrev-function&quot;&gt;Other Reference-Instrrev-function.htm&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/8391659669229161784/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-instrrev.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/8391659669229161784'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/8391659669229161784'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-instrrev.html' title='VBA function inStrRev'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhidzuS2dspP3zeddbaSsCMw2UfJQqYR5DN4vghUQwKpMCtzUQlt4GH1DgZZWM-GbV2krTbHNYSN2GMCvE0neMP6Vq6VWii4oSmFvik1dyEZCXuuX7NmePAiyP6vMY9YPGfoQgLlQEt-0Zm-fvTYpKPNwGBX5J8sgTuy-qSotb0_RrOZvFlZ_vpb_UZug/s72-c/InStrRev%20Diagram.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-1354713886241807646</id><published>2022-11-21T07:05:00.010-08:00</published><updated>2022-11-22T05:52:36.317-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="InStr"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function InStr</title><content type='html'>&lt;p&gt;&lt;b&gt;Instr function&lt;/b&gt; is to get the position of the first occurrence of one string within another. The search String is from &lt;b&gt;left&amp;nbsp; to right&lt;/b&gt; inside another String to get the position for example we wish to get the position of back slash &quot;\&quot; from path &quot;C:\Users\UserName\Desktop\MyBook.xlsx&quot;, if start from 1 then the position of back slash is 3 but if we start from 5 then the position is 9. &lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; InStr(Start,String1,String2,Compare Value) ,&lt;b&gt; Returns :&lt;/b&gt; Long&lt;br /&gt;&lt;/p&gt;
&lt;center&gt;&lt;table border=&quot;1&quot; bordercolor=&quot;#000000&quot; cellpadding=&quot;3&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 600px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; width=&quot;26%&quot;&gt;&lt;b&gt;Constant&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;&lt;b&gt;Value&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;64%&quot;&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;26%&quot;&gt;vbUseCompareOption&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;-1&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;64%&quot;&gt;Performs a comparison by using the setting of the Option Compare statement.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;26%&quot;&gt;vbBinaryCompare&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;0&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;64%&quot;&gt;Performs a binary comparison.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;26%&quot;&gt;vbTextCompare&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;1&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;64%&quot;&gt;Performs a textual comparison.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;26%&quot;&gt;vbDatabaseCompare&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;10%&quot;&gt;2&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;64%&quot;&gt;Microsoft Access only. Performs a comparison based on information in your database.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;
&lt;p&gt;
&lt;/p&gt;&lt;p&gt;Normally for Compare Value we use 0 (case sensitive and default) or 1.Usually we omitted this value to let default which is equal to 0 (binary comparison). For more clear explanation refer below picture.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiS96DYJjOwBfKQufklWnGl4uB1HcEzNm-tE36OvAtzDmOCqotCrRrDJFkKNlkzsphMCg-nlfFM4f5kmnD5U_Qf22b20DvOsYupJ6KNMEc4bd4ZGa6VQlqZWMLxosLpwrX5Db6QjoPPlWfIfFmG0fdWsOTPj2HWnB8Z1jpJpnqxotob2DX3E2e8P9Yfg/s427/InStr%20Diagram.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;190&quot; data-original-width=&quot;427&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiS96DYJjOwBfKQufklWnGl4uB1HcEzNm-tE36OvAtzDmOCqotCrRrDJFkKNlkzsphMCg-nlfFM4f5kmnD5U_Qf22b20DvOsYupJ6KNMEc4bd4ZGa6VQlqZWMLxosLpwrX5Db6QjoPPlWfIfFmG0fdWsOTPj2HWnB8Z1jpJpnqxotob2DX3E2e8P9Yfg/s16000/InStr%20Diagram.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1m_uPD2sL4Y7k7VdrvZkJEyeZjuPfGpzrwjwW0GAFkIFvKRQdsiC5hirHvOe0R1vh-rcOv4z_dX9-xUOJUnuJnh-lDMvjUCMMrlNRBiP_T88DcMEtxnonWAUwWkCy8WHohy_wGsFtRbD_S0GMt537zmH_1jyMPnDVzrHVpivZaz5zJSE1SYECVOsVmg/s427/InStr%20Diagram2.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;191&quot; data-original-width=&quot;427&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1m_uPD2sL4Y7k7VdrvZkJEyeZjuPfGpzrwjwW0GAFkIFvKRQdsiC5hirHvOe0R1vh-rcOv4z_dX9-xUOJUnuJnh-lDMvjUCMMrlNRBiP_T88DcMEtxnonWAUwWkCy8WHohy_wGsFtRbD_S0GMt537zmH_1jyMPnDVzrHVpivZaz5zJSE1SYECVOsVmg/s16000/InStr%20Diagram2.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt; (Example to get Postion of Back slash \)&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_InStr()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrLink As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrLink = &quot;C:\Users\UserName\Desktop\MyBook.xlsx&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;To Get C:\ from above string&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print Left(StrLink, InStr(1, StrLink, &quot;\&quot;, 1))&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;To Get xlsx from above string&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print Right(StrLink, Len(StrLink) - InStr(1, StrLink, &quot;.&quot;, 1))&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt; (Example to check existance of Name keyword)&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_InStrTest()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrLink As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim iPos As Long&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrLink = &quot;C:\Users\UserName\Desktop\MyBook.xlsx&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; iPos = InStr(1, StrLink, &quot;Name&quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If iPos = 0 Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox &quot;Keyword Name not found.&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox &quot;Keyword Name found Start at= &quot; &amp;amp; iPos&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;Usually we use &lt;b&gt;InStr Function&lt;/b&gt; combine with other functions like Left,Right,Mid,Len and etc.
&lt;/p&gt;
Read more about &lt;b&gt; Instr function&lt;/b&gt;, excelmacros, macro excel, &lt;br /&gt;
excel programming, excel vba at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/instr-function&quot; target=&quot;_blank&quot; title=&quot;Instr-function&quot;&gt;Microsoft Reference-Instr-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/instr-function.htm&quot; target=&quot;_blank&quot; title=&quot;Instr-function&quot;&gt;Other Reference-Instr-function.htm&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/1354713886241807646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-instr.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/1354713886241807646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/1354713886241807646'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-instr.html' title='VBA Function InStr'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiS96DYJjOwBfKQufklWnGl4uB1HcEzNm-tE36OvAtzDmOCqotCrRrDJFkKNlkzsphMCg-nlfFM4f5kmnD5U_Qf22b20DvOsYupJ6KNMEc4bd4ZGa6VQlqZWMLxosLpwrX5Db6QjoPPlWfIfFmG0fdWsOTPj2HWnB8Z1jpJpnqxotob2DX3E2e8P9Yfg/s72-c/InStr%20Diagram.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-1414223803227944873</id><published>2022-11-13T20:44:00.004-08:00</published><updated>2022-11-13T20:44:24.756-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Add"/><category scheme="http://www.blogger.com/atom/ns#" term="Methods"/><category scheme="http://www.blogger.com/atom/ns#" term="Template"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="Workbooks"/><title type='text'>VBA Methods - Workbook Add with Header</title><content type='html'>&lt;p&gt;Excel.workbooks.add is to create new&amp;nbsp; Workbook with template.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; expression.Add (Template) ,&lt;b&gt; Returns :&lt;/b&gt; New Workbooks with template&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Refer previous post for more details &lt;a href=&quot;https://mrvba.blogspot.com/2022/05/how-to-create-new-workbook-with.html&quot; target=&quot;_blank&quot;&gt;Here&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Below Example is to Create New Workbook with Header:&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_WorkBookAdd_WithHeader()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MstWB As Workbook&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim SumWs As Worksheet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrHdr As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim j As Integer&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set MstWB = Workbooks.Add(1)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set SumWs = MstWB.Sheets(1)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SumWs.Name = &quot;Summary&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrHdr = &quot;No.,Date,Code,Stock Name,Open,Close,Qty&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For j = LBound(Split(StrHdr, &quot;,&quot;)) To UBound(Split(StrHdr, &quot;,&quot;))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SumWs.Cells(1, j + 1) = Split(StrHdr, &quot;,&quot;)(j)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next j&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;You May Include any code project Here&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; With SumWs&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Rows(1).Font.Bold = True&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Cells.EntireColumn.AutoFit&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End With&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set MstWB = Nothing&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set SumWs = Nothing&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrHdr = &quot;&quot;&lt;br /&gt;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; The Example we use Template XlWBATemplate which is equivalent to 1.&amp;nbsp;
&lt;/p&gt;
Read more about &lt;b&gt; Excel.workbooks.add&lt;/b&gt;, excelmacros, macro excel, &lt;br /&gt;
excel programming, excel vba at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/api/excel.workbooks.add&quot; target=&quot;_blank&quot; title=&quot;Excel.workbooks.add&quot;&gt;Microsoft Reference-Excel.workbooks.add&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/excel/workbooks/vba-creating.htm&quot; target=&quot;_blank&quot; title=&quot;Excel.workbooks.add&quot;&gt;Other Reference-Excel.workbooks.add&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/1414223803227944873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-methods-workbook-add-with-header.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/1414223803227944873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/1414223803227944873'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-methods-workbook-add-with-header.html' title='VBA Methods - Workbook Add with Header'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-3935558473534573518</id><published>2022-11-13T06:10:00.002-08:00</published><updated>2022-11-13T06:10:47.417-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="StrConv"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function Strconv</title><content type='html'>&lt;p&gt;&lt;b&gt;Strconv&lt;/b&gt; function another option to convert String to Lower Case, Upper case even Proper case with more option available.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; &lt;b&gt;StrConv&lt;/b&gt;(String, Constant/Value),&lt;b&gt; Returns :&lt;/b&gt; String&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;b&gt;The Conversion setting as below table:&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;
&lt;center&gt;&lt;table border=&quot;1&quot; bordercolor=&quot;#000000&quot; cellpadding=&quot;3&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 500px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; width=&quot;21%&quot;&gt;&lt;b&gt; Constant&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;&lt;b&gt; Value&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;71%&quot;&gt;&lt;b&gt;Function detail&lt;br /&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbUpperCase&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;1&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts the string to uppercase characters.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbLowerCase&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;2&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts the string to lowercase characters.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbProperCase&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;3&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts the first letter of every word in a string to uppercase.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbWide&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;4&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts narrow (single-byte) characters in a string to wide (double-byte) characters.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbNarrow&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;8&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts wide (double-byte) characters in a string to narrow (single-byte) characters.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbKatakana&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;16&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts Hiragana characters in a string to Katakana characters.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbHiragana&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;32&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts Katakana characters in a string to Hiragana characters.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbUnicode&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;64&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts the string to Unicode using the default code page of the system. (Not available on the Macintosh.)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot; width=&quot;21%&quot;&gt;vbFromUnicode&lt;/td&gt;
&lt;td align=&quot;center&quot; width=&quot;8%&quot;&gt;128&lt;/td&gt;
&lt;td align=&quot;left&quot; width=&quot;71%&quot;&gt;Converts the string from Unicode to the default code page of the system. (Not available on the Macintosh.)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;
&lt;br /&gt;For example if we wish to convert from Lower case to Upper case then we use Syntax:&lt;br /&gt;&lt;b&gt;StrCov(String,1)&lt;/b&gt; or &lt;b&gt;StrCov(String,vbUpperCase) &lt;/b&gt;the result will the same. &lt;br /&gt;&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_Strconv_Function()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrTxtA As String&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrTxtA = &quot;My Car Number PRS123&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print StrConv(StrTxtA, 1) &#39;MY CAR NUMBER PRS123&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print StrConv(StrTxtA, 2) &#39;my car number prs123&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print StrConv(StrTxtA, 3) &#39;My Car Number Prs123&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#39;Or&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print StrConv(StrTxtA, vbUpperCase) &#39;MY CAR NUMBER PRS123&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print StrConv(StrTxtA, vbLowerCase) &#39;my car number prs123&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print StrConv(StrTxtA, vbProperCase) &#39;My Car Number Prs123&lt;br /&gt;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;Basically to convert String to &lt;b&gt;Upper case&lt;/b&gt; we use &lt;b&gt;Ucase&lt;/b&gt; function, String to &lt;b&gt;Lower case&lt;/b&gt; we use &lt;b&gt;Lcase&lt;/b&gt; function and to convert String to &lt;b&gt;Proper case&lt;/b&gt; then we use &lt;b&gt;StrConv&lt;/b&gt; function and the rest is not so importance.&lt;br /&gt;&lt;/p&gt;
Read more about &lt;b&gt; Strconv function&lt;/b&gt;, excelmacros, macro excel, &lt;br /&gt;
excel programming, excel vba at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/strconv-function&quot; target=&quot;_blank&quot; title=&quot;Strconv-function&quot;&gt;Microsoft Reference-Strconv-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/strconv-function.htm&quot; target=&quot;_blank&quot; title=&quot;Strconv-function&quot;&gt;Other Reference-Strconv-function&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/3935558473534573518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-strconv.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/3935558473534573518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/3935558473534573518'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-strconv.html' title='VBA Function Strconv'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-2787335613756139445</id><published>2022-11-08T07:08:00.001-08:00</published><updated>2022-11-08T07:08:35.777-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="Ucase"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function Ucase</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Ucase function&lt;/b&gt; is to converted String from Lowercase to Uppercase or big capital letters for example your text String is &lt;b&gt;&quot;My Name&quot;&lt;/b&gt; then returns &lt;b&gt;&quot;MY NAME&quot;&lt;/b&gt;.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; Ucase(String) ,&lt;b&gt; Returns :&lt;/b&gt; Uppercase String&lt;br /&gt;&lt;/p&gt;
All &lt;b&gt;Lowercase&lt;/b&gt; letters with be changed to &lt;b&gt;Uppercase&lt;/b&gt; and others remain.&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_Ucasefunction()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrTxtA As String, StrTxtB As Variant&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrTxtA = &quot;My Car Number PRS123&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrTxtB = Null&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print UCase(StrTxtA) &#39; MY CAR NUMBER PRS123&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print UCase(StrTxtB) &#39; Null&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;For Null consider not string even we use Ucase on Null it will remain unchanged. This function is very useful when we try to compare or find String inside String and we wish to ignore the case letters by forcing both String either Ucase or LCase before compare.&lt;br /&gt;&lt;/p&gt;
Read more about &lt;b&gt; Ucase function&lt;/b&gt;, excel training beginners, coding in vba, &lt;br /&gt;
excel training online, visual basic for applications at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/ucase-function&quot; target=&quot;_blank&quot; title=&quot;Ucase-function&quot;&gt;Microsoft Reference-Ucase-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/ucase-function.htm&quot; target=&quot;_blank&quot; title=&quot;Ucase-function&quot;&gt;Other Reference-Ucase-function&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/2787335613756139445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-ucase.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/2787335613756139445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/2787335613756139445'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-ucase.html' title='VBA Function Ucase'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-5303600959666020916</id><published>2022-11-08T06:58:00.006-08:00</published><updated>2022-11-08T07:10:47.098-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="Lcase"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function Lcase</title><content type='html'>&lt;p&gt;&lt;b&gt;Lcase function&lt;/b&gt; is to converted String from Uppercase to Lowercase or small capital letters for example your text String is &lt;b&gt;&quot;My Name&quot;&lt;/b&gt; then returns &lt;b&gt;&quot;my name&quot;&lt;/b&gt;.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; Lcase(String) ,&lt;b&gt; Returns :&lt;/b&gt; Lowercase String&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;All &lt;b&gt;Uppercase&lt;/b&gt; letters with be changed to &lt;b&gt;Lowercase&lt;/b&gt; and others remain.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_Lcasefunction()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrTxtA As String, StrTxtB As Variant&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrTxtA = &quot;My Car Number PRS123&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrTxtB = Null&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print LCase(StrTxtA) &#39; my car number prs123&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print LCase(StrTxtB) &#39; Null&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;For Null consider not string even we use Lcase on Null it will remain unchanged.&lt;br /&gt; &lt;/p&gt;
Read more about &lt;b&gt; Lcase function&lt;/b&gt;, excelmacros, macro excel, &lt;br /&gt;
excel programming, excel vba at below links.&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/lcase-function&quot; target=&quot;_blank&quot; title=&quot;Lcase-function&quot;&gt;Microsoft Reference-Lcase-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/lcase-function.htm&quot; target=&quot;_blank&quot; title=&quot;Lcase-function&quot;&gt;Other Reference-Lcase-function&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Leave your comments if you have any request.&lt;br /&gt;
Practice makes perfect.&lt;br /&gt;Thank You.&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/5303600959666020916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-lcase.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/5303600959666020916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/5303600959666020916'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-lcase.html' title='VBA Function Lcase'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-2137613129624201627</id><published>2022-11-04T03:46:00.005-07:00</published><updated>2022-11-06T07:15:13.441-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Array"/><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubound"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function UBound</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Ubound&lt;/b&gt; function is to identify highest number for array sequence normally specify by user. For example Dim myArry(10) then Ubound = 10, another example Dim myArray(5 to 10) then Ubound = 10. In case dynamic array Dim myArray() then Ubound depend on Redim statement assigned in our code. Usually we &lt;b&gt;Ubound&lt;/b&gt; pair with &lt;b&gt;Lbound&lt;/b&gt; function to loop array from lowest to highest value.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Syntax :&lt;/b&gt; Ubound(&lt;i&gt;arrayname,&lt;/i&gt;Dimension) ,&lt;b&gt; Returns :&lt;/b&gt; Numeric&lt;/p&gt;
&lt;p&gt;Example of Dimension&lt;br /&gt;MyArray(10) = Single Dimension&lt;br /&gt; MyArray(5 to 10) = Single Dimension&lt;br /&gt;MyArray(2 to 10, 5 to 12) = 2 Dimension (Key in 1 or 2 for dimension)&lt;br /&gt;MyArray(2 to 10, 5 to 12, 4 to 10) = 3 Dimension (Key in 1, 2 or 3) and etc&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Option Base 1 &#39; Set default array subscripts to 1.&lt;br /&gt;Sub Examples_UBoundArray()&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim myArray1(10)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim myArray2(5 To 8)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim myArray3(2 To 5, 3 To 15)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print UBound(myArray1) &#39;Answer = 10&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print UBound(myArray2) &#39;Answer = 8&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print UBound(myArray3, 1) &#39;Answer = 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print UBound(myArray3, 2) &#39;Answer = 15&lt;br /&gt;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;For single dimension array we don&#39;t to specify dimension in syntax.&lt;/p&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/ubound-function&quot; target=&quot;_blank&quot; title=&quot;Ubound-function&quot;&gt;Microsoft Reference-Ubound-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/ubound-function.htm&quot; target=&quot;_blank&quot; title=&quot;Ubound-function&quot;&gt;Other Reference-Ubound-function&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Practice makes perfect. Thank You.&lt;/p&gt;
&lt;p&gt;macro enabled excel&lt;br /&gt;
excel macro&lt;br /&gt;
vba coding&lt;br /&gt;
vba code&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/2137613129624201627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-ubound.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/2137613129624201627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/2137613129624201627'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-ubound.html' title='VBA Function UBound'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-5282354931544055839</id><published>2022-11-03T07:49:00.002-07:00</published><updated>2022-11-06T07:15:28.543-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Array"/><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="LBound"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function LBound</title><content type='html'>&lt;p&gt;&lt;b&gt;Lbound&lt;/b&gt; function is to identify &lt;b&gt;lowest number&lt;/b&gt; for array sequence by default is 0, with Option Base 1 on top of module then become 1 otherwise specify. For example Dim myArry(10) then Lbound = 0, with Option Base 1 then LBound = 1, another example Dim myArray(5 to 10) then Lbound = 5. Usually we &lt;b&gt;Lbound&lt;/b&gt; pair with &lt;b&gt;Ubound&lt;/b&gt; function to loop array from lowest to highest value.&lt;/p&gt;
&lt;p&gt;&lt;b&gt; Syntax :&lt;/b&gt; Lbound(&lt;i&gt;arrayname&lt;/i&gt;, Dimension) ,&lt;b&gt; Returns :&lt;/b&gt; Numeric&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Example of Dimension&lt;br /&gt;MyArray(10) = Single Dimension&lt;br /&gt; MyArray(5 to 10) = Single Dimension&lt;br /&gt;MyArray(2 to 10, 5 to 12) = 2 Dimension (Key in 1 or 2 for dimension)&lt;br /&gt;MyArray(2 to 10, 5 to 12, 4 to 10) = 3 Dimension (Key in 1, 2 or 3) and etc&lt;/p&gt;&lt;p&gt;&lt;b&gt; &lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Option Base 1 &#39; Set default array subscripts to 1.&lt;br /&gt;Sub Examples_LBoundArray()&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim myArray1(10)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim myArray2(5 To 10)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim myArray3(5 To 10, 3 To 15)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print LBound(myArray1) &#39;Answer = 1 (Option Base 1)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print LBound(myArray2) &#39;Answer = 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print LBound(myArray3, 1) &#39;Answer = 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print LBound(myArray3, 2) &#39;Answer = 3&lt;br /&gt;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt; &lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;For single dimension array we don&#39;t have to specify dimension in syntax.&lt;br /&gt;&lt;/p&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/lbound-function&quot; target=&quot;_blank&quot; title=&quot;Lbound-function&quot;&gt;Microsoft Reference-Lbound-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/lbound-function.htm&quot; target=&quot;_blank&quot; title=&quot;Lbound-function&quot;&gt;Other Reference-Lbound-function&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Practice makes perfect. Thank You.&lt;/p&gt;
&lt;p&gt;macro enabled excel&lt;br /&gt;
excel macro&lt;br /&gt;
vba coding&lt;br /&gt;
vba code&lt;/p&gt;

&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/5282354931544055839/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-lbound.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/5282354931544055839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/5282354931544055839'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-lbound.html' title='VBA Function LBound'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-7223000053448868048</id><published>2022-11-02T07:28:00.000-07:00</published><updated>2022-11-06T07:15:47.957-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="Join"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function Join</title><content type='html'>&lt;p&gt;&lt;b&gt;Join function&lt;/b&gt; is joining a number of sub strings contained in an array. This string joint by delimiter specified in our syntax. Therefore we must understand well what array is before used. The detail array is &lt;a href=&quot;https://mrvba.blogspot.com/2022/10/why-and-how-to-declare-array.html&quot; target=&quot;_blank&quot;&gt;Here&lt;/a&gt;. There are rules to follow:&lt;/p&gt;&lt;p&gt;1) Only single dimension array are allow.&lt;br /&gt;2) Only Sting or Variant data type otherwise error &quot;Run-time error &#39;5&#39;: Invalid procedure call or argument.&lt;br /&gt;3) To joint with space then we use &quot; &quot;.&lt;br /&gt;4) To joint with nothing then we use &quot;&quot;.&lt;br /&gt;5) Be careful with start point either 0 or1 (Option Base 1), if we use Option Base 1 then we must start with 1 otherwise start with 0. Joining result is not accurate when start point is not matched.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Syntax&lt;/b&gt; : Join(Array, [delimiter]), &lt;u&gt;&lt;b&gt;Return&lt;/b&gt;&lt;/u&gt; : Array(0) delimiter Array(1) delimiter Array(2) ....&lt;/p&gt;&lt;p&gt;&lt;u&gt;Below example is to joint String data type with delimiter comma (,):&lt;/u&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Option Base 1 &#39; Set default array subscripts to 1.&lt;br /&gt;Sub Examples_JoinString()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrVar() As String&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReDim Preserve StrVar(1): StrVar(1) = &quot;Tutorial VBA&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReDim Preserve StrVar(2): StrVar(2) = &quot;Excel VBA&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReDim Preserve StrVar(3): StrVar(3) = &quot;Programming&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReDim Preserve StrVar(4): StrVar(4) = &quot;Excel Formula&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReDim Preserve StrVar(5): StrVar(5) = &quot;Visual Basic&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print Join(StrVar, &quot;,&quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt; &lt;br /&gt;The answer for the above is:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Tutorial VBA,Excel VBA,Programming,Excel Formula,Visual Basic&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If we never put Option Base 1 at module level the result will different and not accurate because we never assigned StrVar(0) value. The result as below:&lt;/p&gt;&lt;p&gt;&lt;b&gt;,Tutorial VBA,Excel VBA,Programming,Excel Formula,Visual Basic&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/join-function&quot; target=&quot;_blank&quot; title=&quot;Join-function&quot;&gt;Microsoft Reference-Join-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/join-function.htm&quot; target=&quot;_blank&quot; title=&quot;Join-function&quot;&gt;Other Reference-Join-function&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Practice makes perfect. Thank You.&lt;/p&gt;
&lt;p&gt;macro enabled excel&lt;br /&gt;
excel macro&lt;br /&gt;
vba coding&lt;br /&gt;
vba code&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/7223000053448868048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-join.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/7223000053448868048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/7223000053448868048'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-join.html' title='VBA Function Join'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-4999425585141109635</id><published>2022-11-01T08:06:00.001-07:00</published><updated>2022-11-01T08:06:04.369-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Specification"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>Excel specification and limitation</title><content type='html'>&lt;p&gt;Before getting serious in our coding it is better to know detail specification and limitation of Excel Workbook and Worksheet. For example:&lt;/p&gt;&lt;p&gt;Total Number of Rows : 1,048,576&lt;br /&gt;Total Number of Columns : 16,384&lt;br /&gt;Column width : 255 characters&lt;br /&gt;Row Height : 409 points&lt;/p&gt;&lt;p&gt;All these data will help us to decide what data type to use for example when we work with rows then we use long and column integer is enough and etc. This also help us to prevent error and our code more accurate. For more detail please refer below link.&lt;/p&gt;&lt;a href=&quot;https://support.microsoft.com/en-us/office/excel-specifications-and-limits-1672b34d-7043-467e-8e27-269d656771c3&quot; target=&quot;_blank&quot; title=&quot;Excel-specifications-and-limits&quot;&gt;Microsoft Reference-Excel-specifications-and-limits&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Practice makes perfect. Thank You.&lt;/p&gt;
&lt;p&gt;macro enabled excel&lt;br /&gt;
excel macro&lt;br /&gt;
vba coding&lt;br /&gt;
vba code&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/4999425585141109635/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/excel-specification-and-limitation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/4999425585141109635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/4999425585141109635'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/excel-specification-and-limitation.html' title='Excel specification and limitation'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-3462594745890389351</id><published>2022-11-01T07:48:00.001-07:00</published><updated>2022-11-06T07:17:03.881-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data Types"/><category scheme="http://www.blogger.com/atom/ns#" term="Variant"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>Data type - Variant</title><content type='html'>&lt;p&gt;Data type &lt;b&gt;Variant&lt;/b&gt; is &lt;b&gt;represent all data type&lt;/b&gt; for variables even more widen or general. If we declare variables without data type at the end then system consider as variant. We can choose either &lt;b&gt;Dim VrtVar as Variant&lt;/b&gt; or &lt;b&gt;Dim VrtVar&lt;/b&gt; only. In case we don&#39;t know what data type to use then &lt;b&gt;Variant&lt;/b&gt; is the only choice we have.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;For more example refer below table and code.&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;Below example we try to group the data either number, string, date or empty.&lt;br /&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiw1oWpZ8RrJDH-iiCeju7kOMnW9YdFTM8bBmkTat65FZfQME5BEkRPgOQeAxZClCm5SabUyTrLI1cdZeVTAqT88kRQ6RYqfqCcCXy4HGZTyZ3fa3E5CRrY6GBMcGetpXbSaFJTapFwOeezMPRoYY39Y7sBrFx58vONpusoNvMGeZw_Nv_3AmloRXgBfA/s395/Data%20type%20Variant.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;215&quot; data-original-width=&quot;395&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiw1oWpZ8RrJDH-iiCeju7kOMnW9YdFTM8bBmkTat65FZfQME5BEkRPgOQeAxZClCm5SabUyTrLI1cdZeVTAqT88kRQ6RYqfqCcCXy4HGZTyZ3fa3E5CRrY6GBMcGetpXbSaFJTapFwOeezMPRoYY39Y7sBrFx58vONpusoNvMGeZw_Nv_3AmloRXgBfA/s16000/Data%20type%20Variant.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_DataType_Variant()&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim i As Integer, StrVar&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; With ActiveSheet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = 2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrVar = .Range(&quot;B&quot; &amp;amp; i)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If IsEmpty(StrVar) Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Range(&quot;C&quot; &amp;amp; i) = &quot;Empty&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ElseIf IsDate(StrVar) Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Range(&quot;C&quot; &amp;amp; i) = &quot;Date&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If IsNumeric(StrVar) Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Range(&quot;C&quot; &amp;amp; i) = &quot;Number&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Range(&quot;C&quot; &amp;amp; i) = &quot;String&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set StrVar = Nothing&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = i + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop While .Range(&quot;A&quot; &amp;amp; i) &amp;lt;&amp;gt; &quot;&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End With&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;Please remember Variant data type is not easy to handle because we need to test before proceed otherwise it will generate error.
&lt;/p&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/variant-data-type&quot; target=&quot;_blank&quot; title=&quot;Variant-data-type&quot;&gt;Microsoft Reference-Variant-data-type&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/data-types/variant-data-type.htm&quot; target=&quot;_blank&quot; title=&quot;Variant-data-type&quot;&gt;Other Reference-Variant-data-type&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Practice makes perfect. Thank You.&lt;/p&gt;
&lt;p&gt;excelmacros&lt;br /&gt;
macro excel&lt;br /&gt;
excel programming&lt;br /&gt;
excel vba&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/3462594745890389351/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/data-type-variant.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/3462594745890389351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/3462594745890389351'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/data-type-variant.html' title='Data type - Variant'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiw1oWpZ8RrJDH-iiCeju7kOMnW9YdFTM8bBmkTat65FZfQME5BEkRPgOQeAxZClCm5SabUyTrLI1cdZeVTAqT88kRQ6RYqfqCcCXy4HGZTyZ3fa3E5CRrY6GBMcGetpXbSaFJTapFwOeezMPRoYY39Y7sBrFx58vONpusoNvMGeZw_Nv_3AmloRXgBfA/s72-c/Data%20type%20Variant.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-7364654853651306808</id><published>2022-11-01T07:01:00.006-07:00</published><updated>2022-11-06T07:17:45.335-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="IsObject"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function IsObject</title><content type='html'>&lt;p&gt;&lt;b&gt;IsObject&lt;/b&gt; function is to check whether variables or identifier already assigned as object or not and return as &lt;b&gt;Boolean&lt;/b&gt; either True or False.&lt;/p&gt;&lt;p&gt;Syntax : IsObject(Variables) , Return : True/False&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;
&lt;p&gt;1) Below example is for &lt;b&gt;True&lt;/b&gt; case. &lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_IsObject_True()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim ObjVar&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set ObjVar = ActiveWorkbook&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsObject(ObjVar) &#39;True&lt;br /&gt;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;As you can see &lt;b&gt;ObjVar&lt;/b&gt; already assigned as &lt;b&gt;ActiveWorkbook&lt;/b&gt;, then the result is True.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;1) Below example is for &lt;b&gt;False&lt;/b&gt; case. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_IsObject_False()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim ObjVar&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsObject(ObjVar) &#39;False&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;The &lt;b&gt;ObjVar&lt;/b&gt; is &lt;b&gt;not assigned&lt;/b&gt; to anything, then the result is False.
&lt;/p&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/isobject-function&quot; target=&quot;_blank&quot; title=&quot;Isobject-function&quot;&gt;Microsoft Reference-Isobject-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/isobject-function.htm&quot; target=&quot;_blank&quot; title=&quot;Isobject-function&quot;&gt;Other Reference-Isobject-function&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Practice makes perfect. Thank You.&lt;/p&gt;
&lt;p&gt;excelmacros&lt;br /&gt;
macro excel&lt;br /&gt;
excel programming&lt;br /&gt;
excel vba&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/7364654853651306808/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-isobject.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/7364654853651306808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/7364654853651306808'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/11/vba-function-isobject.html' title='VBA Function IsObject'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3989070786935313594.post-7337777177030048525</id><published>2022-10-31T08:00:00.001-07:00</published><updated>2022-11-06T07:18:27.525-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Functions"/><category scheme="http://www.blogger.com/atom/ns#" term="IsNumeric"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA Code"/><category scheme="http://www.blogger.com/atom/ns#" term="VBA tutorial"/><title type='text'>VBA Function IsNumeric</title><content type='html'>&lt;p&gt;&lt;b&gt;IsNumeric&lt;/b&gt; function is to check whether variables is number or not and return result in &lt;b&gt;Boolean&lt;/b&gt; either True of False. For example &lt;b&gt;IsNumeric(10)&lt;/b&gt; result is &lt;b&gt;True&lt;/b&gt; and &lt;b&gt;IsNumeric(ABC123)&lt;/b&gt; of course &lt;b&gt;False&lt;/b&gt;. If we combine with Not then the result in reverse way. For example &lt;b&gt;Not IsNumeric(10)&lt;/b&gt; then result is &lt;b&gt;False&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Syntax : IsNumeric(expression) , Return : True/False&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;1) Below example for &lt;b&gt;True&lt;/b&gt; case and mostly when data type are Byte, Integer, Long, Double, Decimal, Currency and Boolean.&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_IsNumeric_True()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim BytNum As Byte&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim CurNum As Currency&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim IntNum As Integer&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim LngNum As Long&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim DblNum As Double&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim DecNum As Variant&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim BlnTxt As Boolean&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BytNum = 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CurNum = 12000000&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IntNum = 25000&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LngNum = -50000&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DblNum = 5.25&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DecNum = CDec(7 / 8)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BlnTxt = True&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(BytNum)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(CurNum)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(IntNum)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(LngNum)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(DblNum)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(DecNum)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(BlnTxt)&lt;br /&gt;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;As you can see Boolean data type become True because when False is refer to 0 and True is -1.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;2) Below example for &lt;b&gt;False&lt;/b&gt; case and mostly when data type are String, Date and Other than Number.&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;VBA Vode:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;Option Explicit&lt;br /&gt;Sub Examples_IsNumeric_False()&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrTxt As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim DteTxt As Date&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrTxt = &quot;Abc879&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DteTxt = &quot;21/10/2022&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(StrTxt)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug.Print IsNumeric(DteTxt)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;End Sub&lt;/div&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Note:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;This function is very useful to avoid calculation error because when we try to calculate other than number then system will generate error.&lt;br /&gt;&lt;/p&gt;
&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/isnumeric-function&quot; target=&quot;_blank&quot; title=&quot;Isnumeric-function&quot;&gt;Microsoft Reference-Isnumeric-function&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bettersolutions.com/vba/functions/isnumeric-function.htm&quot; target=&quot;_blank&quot; title=&quot;Isnumeric-function&quot;&gt;Other Reference-Isnumeric-function&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;Practice makes perfect. Thank You.&lt;/p&gt;
&lt;p&gt;excel training beginners&lt;br /&gt;
coding in vba&lt;br /&gt;
excel training online&lt;br /&gt;
visual basic for applications&lt;/p&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;The best online Tutorial for Visual Basic for Application(VBA)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrvba.blogspot.com/feeds/7337777177030048525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://mrvba.blogspot.com/2022/10/vba-function-isnumeric.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/7337777177030048525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3989070786935313594/posts/default/7337777177030048525'/><link rel='alternate' type='text/html' href='http://mrvba.blogspot.com/2022/10/vba-function-isnumeric.html' title='VBA Function IsNumeric'/><author><name>Roszry</name><uri>http://www.blogger.com/profile/00788018771211303535</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>