Page 3 of 19 FirstFirst 1234513 ... LastLast
Results 21 to 30 of 186

Thread: Appendix Thread 2. ( Codes for other Threads, HTML Tables, etc.)

  1. #21
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    VBA to automate Send and Automatically Sending of E-Mails and Excel File Workbooks

    Further notes in support of answer to this Thread:
    http://www.excelfox.com/forum/showth...kbooks-at-once
    http://www.excelfox.com/forum/showth...0518#post10518


    Microsoft Outlook.
    WTF is that and HTF do you do anything with it, and WTF is it supposed to do.

    I didn't know. And still don't......
    The internet is full of stuff on this, but there is no clear explanation of what it is or what it should do or how you do anything with it.

    But I had a go
    Microsoft Outlook: what is that ( using manually )
    You would normally get the software to run on its own ( visible as it were ) in a similar way to which you might get Word or Excel to start, for example
    Find it single click on it:
    FindOutlook Start AllProgrammes Microsoft MicrosoftOutlook.JPG : https://imgur.com/LaGs6HA
    FindOutlook Start TypeInSearchBox Outlook.JPG : https://imgur.com/IbFOSHz
    Make a Desktop icon from a Copy/ paste and double click on it :
    MicrosoftOutlook Make a desktop Icon to double click on.JPG : https://imgur.com/ZNNPmOI

    The first time you try to open it with a click or two, a set up starts.
    Outlook2003Start.JPG https://imgur.com/tSQDoTe
    The main use of the Outlook software is to do Email stuff, so usually you will have at least one Email account “registered in it” You can do this at the set up or later.
    I had a go,
    the start was OK:
    Outlook2003Start.JPG https://imgur.com/R71pKfy
    Outlook2003Start2.JPG https://imgur.com/XUFMpEm

    These following steps took me a few hours of Emails, Internet surfing and annoying Telephone calls to my Internet provider before I
    _ chose IMAP here : Outlook2003Start3ServerType.JPG : https://imgur.com/Jmnd6Vb
    and
    _ got the two required things to put in the 2 server information bars, and other stuff to fill in this : Outlook2003Start4ServerConfiguration.JPG : https://imgur.com/NXNAt9J
    Code:
    Von: "Doc.AElstein@t-online.de" 
    An: "elston, alan" 
    Pop3
    *	Serveradresse	Port*	Sicherheit
    Posteingang	securepop.t-online.de	995	SSL / TLS
    Postausgang	securesmtp.t-online.de	465	SSL
    *
    E-Mails über IMAP4 abrufen
    *	Serveradresse	Port*	Sicherheit
    Posteingang	secureimap.t-online.de	993	SSL
    Postausgang	securesmtp.t-online.de	465	SSL
    
    From: "Doc.AElstein@t-online.de" 
    To: "elston, alan" 
    pop3
    Server address Port Security
    Inbox securepop.t-online.de 995 SSL / TLS
    Outbox securesmtp.t-online.de 465 SSL
    
    Retrieve emails via IMAP4
    Server address Port Security
    Inbox secureimap.t-online.de 993 SSL
    Outbox securesmtp.t-online.de 465 SSL
    Outlook2003Start4ServerConfiguration.JPG : https://imgur.com/NXNAt9J
    MyTelekomNameUsernamePassword.JPG : https://imgur.com/K6qZgsE
    TelekomInternetConfiguration.JPG : https://imgur.com/Z3XcsJu




    Then I hit Finish:
    Outlook2003Start5Fertig.JPG : https://imgur.com/wIMvqBb ´
    I get an error in the left Pane atz that point or later as well sometimes :
    Outlook2003Start6LeftpaneErrror.JPG : https://imgur.com/35XLQv6
    Code:
    could not connect to the server  secureimap t online.JPG : https://imgur.com/UqEZtQe 
    Fehler (0x800CCC0E) beim Ausführen der Aufgabe "Suchen nach neuen Nachrichten in den abonnierten Ordnern auf secureimap.t-online.de.": "Der Download des Ordners "(null)" von Konto "secureimap.t-online.de" vom IMAP-Mailserver ist fehlgeschlagen. Fehler: Die Verbindung zum Server konnte nicht hergestellt werden. Falls dieser Fehler weiterhin auftritt, wenden Sie sich an den Serveradministrator oder den Internetdienstanbieter."
    
    Fehler (0x800CCC0E) beim Ausführen der Aufgabe "secureimap.t-online.de: Posteingang - Auf neue E-Mail überprüfen.": "Der Download des Ordners "Posteingang" von Konto "secureimap.t-online.de" vom IMAP-Mailserver ist fehlgeschlagen. Fehler: Die Verbindung zum Server konnte nicht hergestellt werden. Falls dieser Fehler weiterhin auftritt, wenden Sie sich an den Serveradministrator oder den Internetdienstanbieter."
    
    
    
    
    
    Error (0x800CCC0E) while performing the task "Search for new messages in the subscribed folders on secureimap.t-online.de.": "Downloading the folder" (null) "from account" secureimap.t-online.de "from IMAP mail server failed Error: Unable to connect to server If this error persists, contact your server administrator or ISP. "
    
    Error (0x800CCC0E) when executing the task "secureimap.t-online.de: Inbox - Check for new e-mail.": "The download of the folder" Inbox "of account" secureimap.t-online.de "from IMAP- Mail server failed Error: Unable to connect to server If this error persists, contact your server administrator or ISP. "
    
    
    
    Every time I open Microsoft Outlook after that I get a pop up : could not connect to the server secureimap t online.JPG : https://imgur.com/UqEZtQe
    Code:
    Es Konnte keine Verbindung zum Server hergestellt werden. secureimap.t-online.de befindet sich jetzt im Offlinemodus
    
    It could not connect to the server. secureimap.t-online.de is now in offline mode
    So I am still none the wiser, but It is worth doing all that anyway as you may need some of that information later in one or more of the ways to send an Email using VBA.


    https://www.youtube.com/channel/UCnxwq2aGJRbjOo_MO54oaHA
    https://www.youtube.com/watch?v=oVb1RfcSHLM&lc=UgwTq-jZlZLnLQ5VB8Z4AaABAg.9Hroz-OyWog9tYjSMc1qjA
    https://www.youtube.com/watch?v=0pbsf6sox34&lc=Ugxp9JFvvejnqA68W1t4AaABAg
    https://www.youtube.com/watch?v=kfQC-sQxMcw&lc=UgyCxQWypNIhG2nUn794AaABAg.9q1p6q7ah839tUQl_92m vg
    https://www.youtube.com/watch?v=vXyMScSbhk4&lc=UgyOh-eR43LvlIJLG5p4AaABAg.9isnKJoRfbL9itPC-4uckb
    https://www.youtube.com/watch?v=vXyMScSbhk4&lc=Ugy1B1aQnHq2WbbucmR4AaABAg.9isY3Ezhx4j9itQLuif2 6T
    https://www.youtube.com/watch?v=vXyMScSbhk4&lc=UgxxajSt03TX1wxh3IJ4AaABAg.9irSL7x4Moh9itTRqL7d Qh
    https://www.youtube.com/watch?v=vXyMScSbhk4&lc=Ugxa2VYHMWJWXA6QI294AaABAg.9irLgSdeU3r9itU7zdnW Hw
    https://www.youtube.com/watch?v=vXyMScSbhk4&lc=UgwJAAPbp8dhkW2X1Uh4AaABAg.9iraombnLDb9itV80HDp Xc
    https://www.youtube.com/watch?v=vXyMScSbhk4&lc=UgzIzQ6MQ5kTpuLbIuB4AaABAg.9is0FSoF2Wi9itWKEvGS Sq
    https://www.youtube.com/channel/UCnxwq2aGJRbjOo_MO54oaHA
    Last edited by DocAElstein; 09-22-2023 at 04:06 PM.
    A Folk, A Forum, A Fuhrer ….

  2. #22
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    VBA to automate Send and Automatically Sending of E-Mai

    _1 ) Way 1) Use the CDO (Collaboration Data Objects ) object library available in VBA
    Main Code , Sub PetrasDailyProWay1_COM_Way() ,
    and
    Function Code for solution to this Thread and Post
    http://www.excelfox.com/forum/showth...kbooks-at-once
    http://www.excelfox.com/forum/showth...0518#post10518





    Code:
    Option Explicit ' Daily Diet plan, Sending of Notes and an Excel File
    Sub PetrasDailyProWay1_COM_Way() '  Allow access to deep down cods wollops from Microsoft to collaborating in particular in the form of messaging. An available library of ddl library functions and associated things is available on request, the  Microsoft CDO for Windows 2000. We require some of these '  CDO is an object library that exposes the interfaces of the Messaging Application Programming Interface (MAPI). API: interfaces that are fairly easy to use from a fairly higher level from within a higher level programming language. In other words this allows you to get at and use some of the stuff to do with the COM OLE Bollocks from within a programming language such as VBA  API is often referring loosely to do with using certain shipped with Windows software in Folders often having the extension dll. This extension , or rather the dll stands for direct link libraries. These are special sort of executable files of functions shared by many other (Windows based usually) software’s.
    ' Rem1 The deep down fundamental stuff , which includes stuff been there the longest goes by the name of Component Object Model. Stuff which is often, but not always, later stuff, or at a slightly higher level of the computer workings, or slightly more to a specific application ( an actual running "runtime" usage / at an instance in time , "instance of" ) orientated goes to the name of Object Linking and Embedding. At this lower level, there are protocols for communicating between things, and things relate are grouped into the  to Office  application available Library, CDO. An important object there goes by the name of Message.
    'Rem 1) Library made available            ====================#
      With CreateObject("CDO.Message") '   Folders mostly but not always are in some way referenced using dll, either as noted with the extension or maybe refered to as dll Files or dll API files.
    'Rem 2 ' Intraction protocols are given requird infomation and then set
        '2a) 'With --------------------* my Created LCDCW Library, (LCD 1.0 Library ) (Linking Configuration Data_Cods Wollups) which are used and items configured for the Exchange at Microsoft’s protocol thereof;   http://schemas.microsoft.com/cdo/configuration/ ......This section provides the configuration information for the remote SMTP server
        Dim LCD_CW As String: Let LCD_CW = "http://schemas.microsoft.com/cdo/configuration/" ' Linking Configuration Data : defines the majority of fields used to set configurations for various Linking Collaboration (LCD) Objects Cods Wollops: These configuration fields are set using an implementation of the IConfiguration.Fields collection.  https://msdn.microsoft.com/en-us/library/ms872853(v=exchg.65).aspx
         .Configuration(LCD_CW & "smtpusessl") = True ' ' ' HTTPS (Hyper Text Transfer Protocol Secure) appears in the URL when a website is secured by an SSL certificate. The details of the certificate, including the issuing authority and the corporate name of the website owner, can be viewed by clicking on the lock symbol on the browser bar. in short, it's the standard technology for keeping an internet connection secure and safeguarding any sensitive data that is being sent between two systems, preventing criminals from reading and modifying any information transferred, including potential personal details.  ' SSL protocol has always been used to encrypt and secure transmitted data
         .Configuration(LCD_CW & "smtpauthenticate") = 1  ' ... possibly this also needed ..   When you also get the Authentication Required Error you can add this three lines.
        '  ' Sever info
         .Configuration(LCD_CW & "smtpserver") = "smtp.gmail.com" ' "securesmtp.t-online.de"                 '"smtp.gmail.com" "smtp.mail.yahoo.com" "smtp.live.com" "pod51017.outlook.com"  "smtp-mail.outlook.com" "smtp.live.com"  "securesmtp.t-online.de"  465         SMTP is just used to mean the common stuff.....  Simple Mail Transport Protocol (SMTP) server is used to send outgoing e-mails. The SMTP server receives emails from your Mail program and sends them over the Internet to their destination.
        '  The mechanism to use to send messages.
         .Configuration(LCD_CW & "sendusing") = 2  '  Based on the LCD_OLE Data Base of type DBTYPE_I4
         .Configuration(LCD_CW & "smtpserverport") = 25 ' 465or25fort-online ' 465 'or 587 'or 25   ' The port of type somehow refered to by the last line
        '
         .Configuration(LCD_CW & "sendusername") = "excelvbaexp@gmail.com" ' "Doc.AElstein@t-online.de" ' .... "server rejected your response".  AFAIK : This will happen if you haven't setup an account in Outlook Express or Windows Mail .... Runtime error '-2147220975 (800440211)': The message could not be sent to the SMTP server. The transport error code is 0x80040217. The server response is not available
         .Configuration(LCD_CW & "sendpassword") = "Bollocks" '              "Bollox"
        ' Optional - How long to try     ( End remote SMTP server configuration section )
         .Configuration(LCD_CW & "smtpconnectiontimeout") = 30 '    Or there Abouts ;) :)
        ' Intraction protocol is Set/ Updated
         .Configuration.Fields.Update ' 'Not all infomation is given, some will have defaults. - possibly this might be needed initially ..    .Configuration.Load -1 ' CDO Source Defaults
        'End With ' -------------------* my Created  LCDCW Library ( Linking Configuration Data Cods Wollups)  which are  used and items configured for the Exchange at Microsoft's protocol therof;
       '2b) ' Data to be sent
       '.To = "Doc.AElstein@t-online.de"
       .To = "excelvbaexp@gmail.com"
       .CC = ""
       .BCC = ""
       .from = """Alan"" "
       .Subject = "Bollox"
       '.TextBody = "Hi" & vbNewLine & vbNewLine & "Please find the Excel workbook attached."
       .HTMLBody = MyLengthyStreaming
       .AddAttachment "G:\ALERMK2014Marz2016\NeueBlancoAb27.01.2014\AbJan2016\Übersicht aktuell.xlsx" ' ' Full File path and name. File must be closed
     Rem 3 Do it
       .Send
     End With ' CreateObject("CDO.Message") (Rem 1 Library End =======#
    End Sub
    Public Function MyLengthyStreaming() As String
    Rem 1 Make a long string from a Microsoft Word doc
    '1(i) makes available the Library of stuff, objects, Methods etc.
    Dim Fso As Object: Set Fso = CreateObject("Scripting.FileSystemObject")
    '1(ii) makes the big File Object                       " Full path and file name of Word doc saved as .htm       "
    Dim FileObject As Object: Set FileObject = Fso.GetFile("G:\ALERMK2014Marz2016\NeueBlancoAb27.01.2014\AbJan2016\ProMessage.htm"): Debug.Print FileObject
    '1(iii) sets up the data  "stream highway"
    Dim Textreme As Object:  Set Textreme = FileObject.OpenAsTextStream(iomode:=1, Format:=-2)        '   reading only, Opens using system default            https://msdn.microsoft.com/en-us/library/aa265341(v=vs.60).aspx
    '1(iv) pulls in the data, in our case into a simple string variable
     Let MyLengthyStreaming = Textreme.ReadAll         '        Let MyLengthyStreaming = Replace(MyLengthyStreaming, "align=center x:publishsource=", "align=left x:publishsource=")
     Textreme.Close
     Set Textreme = Nothing
     Set Fso = Nothing
    Rem 2 possible additions to MyLengthyStreaming
    Last bit of Function ( must go here in the excelfox Test Sub Forum in HTML Tags as there are HTML Tags in the final text string string and this makes a mess in normal BB code tags, because in excelfox Test Forum HTML is activated ) :
    HTML Code:
    Rem 2
     Let MyLengthyStreaming = "<p><span style=""color: #ff00ff;"">Start=========== " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ------------------------------------</span></p>" & MyLengthyStreaming & "<p><span style=""color: #ff00ff;"">-- " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ==End, Sent from Doc.AElstein Mail ======</span></p>"
    End Function
    Last edited by DocAElstein; 02-28-2018 at 03:09 AM.
    A Folk, A Forum, A Fuhrer ….

  3. #23
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10
    Function Code for solution to this Thread and Post
    http://www.excelfox.com/forum/showth...0518#post10518




    HTML For CDO.Message.HTMLBody in VBA Emails sending

    Linked in my Binding Function, MyLenghtyString LBF_MLS
    In support of this Thread:
    http://www.excelfox.com/forum/showth...kbooks-at-once

    HTM / HTML is a very typical electronic message language recognised by most software devices associated with Email and similar.
    In two ways considered in this Thread , http://www.excelfox.com/forum/showth...0512#post10512 , the main Message Text body to be sent in an Email can be supplied as a single HTML code string.

    One convenient way to supply this is with a simple Word.doc file which can simply saved with a htm file extension
    Word doc to htm.JPG : https://imgur.com/vhRE9CC

    By opening this with a simple text editor, the actual text along with much more htm code detail can be revealed
    LastBitOfProMessage htm.JPG : https://imgur.com/mT6l40I
    LastBitOfProMessage htm 2.JPG : https://imgur.com/s0U8419

    This is the actual text required to be given after the an Email data filling code line like:
    _ .HTMLBody =

    The actual file held anywhere will likely include all sorts of computery stuff in addition to that text.
    We can get at just the text in several ways.
    A typical way in VBA is to make use of one of a number of Object Orientated stuff held in the Visual Basic FileSystemObject Object. This is in turn part of the Bundle in the available to application programs (such as Excel VBA) Library, Microsoft Scripting Runtime

    The way this works is as follows.
    For a given file, a large object can be made within the Microsoft Scripting Runtime Library Class type Module like Library, ** Polymorphically speaking.
    The Microsoft Scripting Runtime FileSystemObject Object GetFile method returns this object requiring only its full file path in order to “Get at it” . ( The returned object is pseudo in the streaming runtime instant direct compiling linking .Net technology held as a running link, ( indeed by assigning the object to, or using in an environment of, String will itself return that arguments string reference ) )
    **:From Microsoft documentation: Visual Basic provides polymorphism through multiple ActiveX interfaces. In the Component Object Model (COM) that forms the infrastructure of the ActiveX specification, multiple interfaces allow systems of software components to evolve and break existing code.
    In this sense interface is a set of related properties and methods. Much of the ActiveX specification is concerned with implementing standard interfaces to obtain system services or to provide malfunctionality to other programs.
    The actual processes involved are in the meantime so messed up that it is a wonder that anything still works, and I doubt it will be long before nothing does.
    The large FileObject in the Microsoft Scripting Runtime Library Class type Module like Library has information , amongst other things of neighbouring things , and as is typical in this mixed up messed up process , a short tem path or highway is made, and more often than not a “text stream object”, something like a continuous stream of data or like a highways going around in circles, and this will only be of a runtime existence, or at any rate should.. during this lifetime it can be “read”. I guess for any file of any type data within it will be recognised as such and can be handled in this simple text stream way.

    The original coding goes quite a way back and does not really fit in Object Orientated Visual basic hierarchical structure of the original implementation of File I/O in Visual Basic. But it does at lest work well in getting at text stream string things which we are interested in

    The available methods and the such reflect all the above…
    -…So code will have a string getting section that..
    1(i) makes available the Library of stuff, objects, Methods etc.
    1(ii) makes the big File Object
    1(iii) sets up the data “stream highway”
    1(iv) pulls in the data, in our case into a simple string variable


    _.____
    I have decided for my requirement to use a “Function” for this, not just to house tidily the above steps, but also as I may add some additional bits from time to time too the main inner body string for my Email message, which the main function of this all is to produce.
    To recap on the Function idea here ( http://www.excelfox.com/forum/showth...blem#post10503 )

    In end effect I want a String. In fact in the main code in which this should be embedded has this as a variable
    Pseudo, Linked in my Binding Function, ObjectLinkedEbeded Stuff
    In place of an actual static linked variable_...
    Dim MyLenghtyString As String
    _ Let MyLenghtyString = “static linked at pseudo Compile String”

    _.. I have
    Function MyLenghyString(Export) As String
    _ Pall MyLenghyString()_Import
    _.. or Let MyLenghtyString = “direct linked runny runable library”


    The end result is that in my code I will have simply pulling of

    _ .HTMLBody = MyLengthyStreaming


    Function Code description:
    Rem 1
    This uses the File System Object way discussed above to finally produce a long text string in variable _ MyLengthyStreaming _ This string probably has a of unnecessary stuff as well as the required part of the HTML code, but appears to be able to be handled and manipulated as if it were just the required part. Presumably the rest is ignored by things such as internet browsers

    Rem 2
    This allows for some extra simple string data to be added. If you are not familiar with HTML code then you can easily get the required string from text to HTML converters of which there are many freely available in internet
    Note: If you have any in your required HTML string, then you will need to replace them in the given string in the VBA code with “”
    http://www.excelfox.com/forum/showth...rmat#post10448






    ' https://support.microsoft.com/en-in/kb/186118
    https://www.youtube.com/watch?v=nj8mU3ecwsM
    https://www.youtube.com/watch?v=f8s-jY9y220&t=1813s




    Note: ' path in code must be changed to reflect where you save .htm file
    Pubic Function MyLengthyStreaming() As String
    Code:
    Public Function MyLengthyStreaming() As String
    Rem 1 Make a long string from a Microsoft Word doc
    '1(i) makes available the Library of stuff, objects, Methods etc.
    Dim Fso As Object: Set Fso = CreateObject("Scripting.FileSystemObject")
    '1(ii) makes the big File Object                       " Full path and file name of Word doc saved as .htm       "
    Dim FileObject As Object: Set FileObject = Fso.GetFile("G:\ALERMK2014Marz2016\NeueBlancoAb27.01.2014\AbJan2016\ProMessage.htm"): Debug.Print FileObject  ' path in code must be changed to reflect where you save it
    '1(iii) sets up the data  "stream highway"
    Dim Textreme As Object:  Set Textreme = FileObject.OpenAsTextStream(iomode:=1, Format:=-2)        '   reading only, Opens using system default            https://msdn.microsoft.com/en-us/library/aa265341(v=vs.60).aspx
    '1(iv) pulls in the data, in our case into a simple string variable
     Let MyLengthyStreaming = Textreme.ReadAll         '        Let MyLengthyStreaming = Replace(MyLengthyStreaming, "align=center x:publishsource=", "align=left x:publishsource=")
     Textreme.Close
     Set Textreme = Nothing
     Set Fso = Nothing
    Rem 2 possible additions to MyLengthyStreaming
    HTML Code:
    Rem 2
     Let MyLengthyStreaming = "<p><span style=""color: #ff00ff;"">Start=========== " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ------------------------------------</span></p>" & MyLengthyStreaming & "<p><span style=""color: #ff00ff;"">-- " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ==End, Sent from Doc.AElstein Mail ======</span></p>"
    End Function


    MyLengthyStreaming = "<p><span style=""color: #ff00ff;"">Start=========== " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ------------------------------------</span></p>" & MyLengthyStreaming & "<p><span style=""color: #ff00ff;"">-- " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ==End, Sent from Doc.AElstein Mail ======</span></p>"
    MyLengthyStreaming = "[color=Black]<[/color]p[color=Black]>[/color][color=Black]<[/color]span style=""color: #ff00ff;""[color=Black]>[/color]Start=========== " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ------------------------------------[color=Black]<[/color]/span[color=Black]>[/color][color=Black]<[/color]/p[color=Black]>[/color]" & MyLengthyStreaming & "[color=Black]<[/color]p[color=Black]>[/color][color=Black]<[/color]span style=""color: #ff00ff;""[color=Black]>[/color]-- " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ==End, Sent from Doc.AElstein Mail ======[color=Black]<[/color]/span[color=Black]>[/color][color=Black]<[/color]/p[color=Black]>[/color]"

    Code:
    Public Function MyLengthyStreaming() As String
    Rem 1 Make a long string from a Microsoft Word doc
    '1(i) makes available the Library of stuff, objects, Methods etc.
    Dim Fso As Object: Set Fso = CreateObject("Scripting.FileSystemObject")
    '1(ii) makes the big File Object                       " Full path and file name of Word doc saved as .htm       "
    Dim FileObject As Object: Set FileObject = Fso.GetFile("G:\ALERMK2014Marz2016\NeueBlancoAb27.01.2014\AbJan2016\ProMessage.htm"): Debug.Print FileObject
    '1(iii) sets up the data  "stream highway"
    Dim Textreme As Object:  Set Textreme = FileObject.OpenAsTextStream(iomode:=1, Format:=-2)        '   reading only, Opens using system default            https://msdn.microsoft.com/en-us/library/aa265341(v=vs.60).aspx
    '1(iv) pulls in the data, in our case into a simple string variable
     Let MyLengthyStreaming = Textreme.ReadAll         '        Let MyLengthyStreaming = Replace(MyLengthyStreaming, "align=center x:publishsource=", "align=left x:publishsource=")
     Textreme.Close
     Set Textreme = Nothing
     Set Fso = Nothing
    Rem 2 possible additions to MyLengthyStreaming
     Let MyLengthyStreaming = "<p><span style=""color: #ff00ff;"">Start=========== " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ------------------------------------</span></p>" & MyLengthyStreaming & "<p><span style=""color: #ff00ff;"">-- " & Format(Now(), "DD MMMM YYYY") & " " & Now() & " ==End, Sent from Doc.AElstein Mail ======</span></p>"
    End Function

    Results Example:

    Used htm Word File.JPG : https://imgur.com/mwihFBT
    "ProMessage.htm" ( Saved from Word as .htm ) : https://app.box.com/s/cbtodk5srg76a5lowfemrdvei91mfmdq
    Used htm Word File.JPG

    Recieved Email gmail.jpg : https://imgur.com/x0NybLa :
    Code:
       '.To = "Doc.AElstein@t-online.de"
       .To = "excelvbaexp@gmail.com"
    Recieved EMail gmail.jpg


    Recieved EMail Telekom : https://imgur.com/wqPJSCt
    Recieved EMail Telekom 2.JPG : https://imgur.com/o5mRkak
    Code:
       .To = "Doc.AElstein@t-online.de"
       '.To = "excelvbaexp@gmail.com"
    Recieved EMail Telekom.JPGRecieved EMail Telekom 2.jpg








    _.________________________________________________ ____________________________

    Uploaded file had to be done as .docx to get it to upload at excelfox ( .htm were not permitted to be uploaded )
    To use in code it must be resaved as .html ( ' and path in code must be changed to reflect where you save it )
    Attached Files Attached Files
    Last edited by DocAElstein; 02-28-2018 at 02:08 PM.
    A Folk, A Forum, A Fuhrer ….

  4. #24
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    HTML Code seen in Text Editor

    HTML as seen in Text Editor, for this Post:
    http://www.excelfox.com/forum/showth...0524#post10524

    OpenProMessageHTMLWithTextEditor.JPG : https://imgur.com/4zev9Kv

    ProMessageHTMLInTextEditor.JPG : https://imgur.com/eTUd17q


    Code:
    HTML Code:
    <body lang=DE style='tab-interval:35.4pt'>
    
    <div class=WordSection1>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"Times","serif";color:black'>T <span class=SpellE>Andale</span>
    Mono</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='color:red'> </span><span
    style='font-size:10.0pt;font-family:"Arial","sans-serif";color:red'>T Arial</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-family:"Arial Black","sans-serif";
    color:#FF9900'>T Arial Black</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"Comic Sans MS";color:#99CC00'>T Comic <span class=SpellE>Sans</span>
    MS</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"Courier New";color:#33CCCC'>T Courier New</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"Georgia","serif";color:#3366FF'>T Georgia</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"Helvetica","sans-serif";color:purple'>T <span class=SpellE>Helvetics</span></span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"Impact","sans-serif";color:#999999'>T Impact</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"Tahoma","sans-serif";color:#993300'>T <span class=SpellE>Tahoma</span></span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"monaco","serif";color:fuchsia'>T Terminal</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    color:olive'>T Times New Roman</span></p>
    
    <p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:10.0pt;
    font-family:"Trebuchet MS","sans-serif";color:#FF6600'>T <span class=SpellE>Trebuchet</span>
    MS</span></p>
    
    <p class=MsoNormalCxSpFirst><o:p> </o:p></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-size:9.0pt;line-height:115%;
    font-family:"Verdana","sans-serif";color:#C00000'>W9 <span class=SpellE>Verdana</span><o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-family:"Arial Narrow","sans-serif";
    color:red'>W11 Arial <span class=SpellE>Narrow</span><o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-size:14.0pt;line-height:115%;
    font-family:"Batang","serif";color:#FFC000'>W14 <span class=SpellE>Batang</span><o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-size:16.0pt;line-height:115%;
    mso-ascii-font-family:Calibri;mso-fareast-font-family:Batang;mso-hansi-font-family:
    Calibri;color:#92D050'>W16 Calibri<o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-size:18.0pt;line-height:115%;
    font-family:"Cambria Math","serif";mso-fareast-font-family:Batang;color:#00B050'>W18
    <span class=SpellE>Cambri</span> <span class=SpellE>Math</span><o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-size:20.0pt;line-height:115%;
    font-family:FangSong;color:#00B050'>W20 <span class=SpellE>FangSong</span><o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-size:22.0pt;line-height:115%;
    font-family:"Gungsuh","serif";color:#00B0F0'>W22 <span class=SpellE>Gungsuh</span><o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-size:24.0pt;line-height:115%;
    font-family:GungsuhChe;color:#0070C0'>W24 <span class=SpellE>GungsuhChe</span></span><span
    style='font-size:24.0pt;line-height:115%;font-family:"Franklin Gothic Heavy","sans-serif";
    mso-fareast-font-family:Batang;color:#0070C0'> <o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpMiddle><span style='font-size:26.0pt;line-height:115%;
    font-family:"Times New Roman","serif";mso-fareast-font-family:Batang;
    color:#002060'>W26 Times New Roman<o:p></o:p></span></p>
    
    <p class=MsoNormalCxSpLast><span style='font-size:28.0pt;line-height:115%;
    font-family:"Franklin Gothic Heavy","sans-serif";mso-fareast-font-family:Batang;
    color:#7030A0'>W28 Franklin <span class=SpellE>Gothic</span><span
    style='mso-spacerun:yes'>  </span>Heavy<o:p></o:p></span></p>
    
    </div>
    
    </body>
    
    </html>
    A Folk, A Forum, A Fuhrer ….

  5. #25
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    Modified initial function and additional second function for German telekom EMail workaround

    Function codes discussed in this Post:
    http://www.excelfox.com/forum/showth...0527#post10527






    Code:
    Public Function MyLengthyStreaming() As String
    Rem 1 Make a long string from a Microsoft Word doc
    '1(i) makes available the Library of stuff, objects, Methods etc.
    Dim Fso As Object: Set Fso = CreateObject("Scripting.FileSystemObject")
    '1(ii) makes the big File Object                       " Full path and file name of Word doc saved as .htm       "
    Dim FileObject As Object: Set FileObject = Fso.GetFile("G:\ALERMK2014Marz2016\NeueBlancoAb27.01.2014\AbJan2016\ProMessageTelekom.htm"): Debug.Print FileObject
    '1(iii) sets up the data  "stream highway"
    Dim Textreme As Object:  Set Textreme = FileObject.OpenAsTextStream(iomode:=1, Format:=-2)        '   reading only, Opens using system default            https://msdn.microsoft.com/en-us/library/aa265341(v=vs.60).aspx
    '1(iv) pulls in the data, in our case into a simple string variable
     Let MyLengthyStreaming = Textreme.ReadAll         '        Let MyLengthyStreaming = Replace(MyLengthyStreaming, "align=center x:publishsource=", "align=left x:publishsource=")
     Textreme.Close
     Set Textreme = Nothing
     Set Fso = Nothing
     Let MyLengthyStreaming = MyLenghtyDiesScreaming_Telekom(MyLengthyStreaming) ' After this code line is done we have the string modified so that it gives the correct results in German Telekom Freemail t-online.de
    Rem 2 possible additions to MyLengthyStreaming
    ' 
    '
    '
    '
    End Function
    '
    '  The second function below is mainly intended to make a modification to get the correct results in German Telekom Freemail t-online.de , but also the large html text not required from the start and a small amount at the end is also removed. (It does not need to be removed as it appears that it is ignored)
    Public Function MyLenghtyDiesScreaming_Telekom(ByVal MyLengfyScream As String) As String '  Effectively this Dim's  MyLenghtyDiesScreaming_Telekom  as a String variable and  MyLenghtyDiesScreaming_Telekom  can be used as such in this function code.  Assigning a variable to this in a main code will cause  the value held by VBA in the variable  MyLenghtyDiesScreaming_Telekom   at that point to be out in the assigned variable, but fist the main code will be paused at  this "calling"  code line whilst the Function code is carried out.  So we have the chance to do something in the function to fill that variable, MyLenghtyDiesScreaming_Telekom . We can take one or more things in in the ( ) to use . In this case we want to take a string in and then return it modified , hence the last code line is simply   MyLenghtyDiesScreaming_Telekom = MyLengfyScream
    Dim CntPus As Long '      A number constant for the positions of characters used in a couple of places.        Long is very simple to handle, - final memory "size" type is known (123.456 and 000.001 have same "size" computer memory ) , and so a Address suggestion can be given for the next line when the variable is filled in.  '( Long is a Big whole Number limit (-2,147,483,648 to 2,147,483,647) If you need some sort of validation the value should only be within the range of a Byte/Integer otherwise there's no point using anything but Long.--upon/after 32-bit, Integers (Short) need converted internally anyways, so a Long is actually faster. )       https://www.mrexcel.com/forum/excel-questions/803662-byte-backward-loop-4.html
    ' Take off all the first lot on unecessary required HTML
     Let CntPus = InStr(1, MyLengfyScream, "<div class=WordSection1>", vbTextCompare) '  return the position (starting from the fist character ,  Looking in the string  ,  for that text  ,  doing a text comparison which is case insensitive  )
     Let MyLengfyScream = Mid(MyLengfyScream, CntPus + 26)
    ' Add to this array below all possible fonts in quotes      I have to use Variant type as the VBA Array( ) Method used below pruduces a 1 dimmansional Array of Variant types.   I may assing a dynamic Array of variant types to what the VBA Array( ) Function returns
    Dim arsFonts() As Variant: Let arsFonts() = Array("""Andale Mono""", """Times""", """serif""", """Arial""", """sans-serif""", """Arial Black""", """Comic Sans MS""", """Courier New""", """Georgia""", """Helvetics""", """Impact""", """Tahoma""", """Terminal""", """monaco""", """Times New Roman""", """Trebuchet MS""", """Verdana""", """Arial Narrow""", """Batang""", """Calibri""", """Cambri Math""", """FangSong""", """Gungsuh""", """GungsuhChe""", """Franklin Gothic Heavy""")
    Dim arschFont As Variant ' It is a required syntax that the stearing element in the For Each loop to be Variant type or Object type, ( the object type can be  Object   or ther specific object. if I do not specify specifically then VBVA defaults to all simialr ngs in the thing you are going through                                                                        '  http://www.excelfox.com/forum/showthread.php/2157-Re-Defining-multiple-variables-in-VBA?p=10192#post10192
    ' Look for things like "Font"  and replace the " with an arbitrary string like ScrotumSack , so  "Font"  becomes  ScrotumSackFontScrotumSack
        For Each arschFont In arsFonts() ' Loop to look for and replce each Font held in "s with the same font but in 's
         If InStr(1, MyLengfyScream, arschFont, vbTextCompare) > 1 Then ' case a Font in quotes , like "font"  ,  so for that font in quotes... and ...
         Dim FontSingleScrQuote As String: Let FontSingleScrQuote = Replace(arschFont, """", "ScrotumSack", 1, 2, vbBinaryCompare) ' ...Make a that font in ScrotumSack  like ScrotumSackfontScrotumSack ... and ...     I use ScrotumSack arbitrarily as I find it funny and I doubt anyone else does.. does use it, so I won't have that already in the text. I cannot go straight to using the '  because if I do that now then I won't be able to distinguisch the existing ' which I want to change to "  in the next bit
          Let MyLengfyScream = Replace(MyLengfyScream, arschFont, FontSingleScrQuote, 1, -1, vbTextCompare) ' .... replace all "fonts" with ScrotumSackfontsScrotumSack
         Else '  no arsch Font in My lengfy scream
         End If
        Next arschFont
    ' replace any ' with "  This is mainly intended to replace enclosed in ' strings like   askjhhsa ='kasjhScrotumSackfontScrotumSackfcb qwq 63 = Bollocks' jdgsjag   with     askjhhsa ="kasjhScrotumSackfontScrotumSackfcb qwq 63 = Bollocks" jdgsjag
     Let MyLengfyScream = Replace(MyLengfyScream, "'", """", 1, -1, vbTextCompare)
    ' Scratch my Scrotum sacks, - that is to say replace them with a with  '   I can do this now since the existing  '  have been changeed to "  so the ScrotumSacks , which were originally "s , can now be chnged to 's
     Let MyLengfyScream = Replace(MyLengfyScream, "ScrotumSack", "'", 1, -1, vbTextCompare)
    ' take last unecessary bit of HTML off
     Let CntPus = InStrRev(MyLengfyScream, "</div>", -1, vbTextCompare) ' get the position counting from the left but looking from the right   ( in MyLengfyScream , of </div> , start looking from end , make text comparison which is case insensitive )
     Let MyLengfyScream = Left(MyLengfyScream, CntPus - 1)
    ' Finally we set here what is actually returned by virtue of effectively putting something in the pseudo variable  MyLenghtyDiesScreaming_Telekom
     Let MyLenghtyDiesScreaming_Telekom = MyLengfyScream
    End Function
    Last edited by DocAElstein; 03-01-2018 at 09:59 PM.
    A Folk, A Forum, A Fuhrer ….

  6. #26
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    Code for RaghavendraPrabhu Make macro create unique files only once.If files exist amend them.

    Code for RaghavendraPrabhu
    For this Post in main Excel Forum
    http://www.excelfox.com/forum/showth...ist-amend-them

    Code:
    Option Explicit
    
    ' https://stackoverflow.com/questions/46368771/how-to-create-a-new-workbook-for-each-unique-value-in-a-column?rq=1
    ' http://www.excelfox.com/forum/showthread.php/2237-Make-macro-create-unique-files-only-once-If-files-exist-amend-them
    Sub ExportByName()
    Dim unique(1000) As String
    Dim wb(1000) As Workbook
    Dim ws As Worksheet
    Dim x As Long
    Dim y As Long
    Dim ct As Long
    Dim uCol As Long
    
    'On Error GoTo ErrHandler
    
    'Application.ScreenUpdating = False
    'Application.Calculation = xlCalculationManual
    
    'Your main worksheet
    Set ws = ActiveWorkbook.Sheets("Sheet1")
    
    'Column G
    uCol = 7
    ct = 0
    
    'get a unique list of users
    For x = 2 To ws.Cells(ws.Rows.Count, uCol).End(xlUp).Row
        If CountIfArray(ActiveSheet.Cells(x, uCol), unique()) = 0 Then
            unique(ct) = ActiveSheet.Cells(x, uCol).Text
            ct = ct + 1
        End If
    Next x
    
    'loop through the unique list
      For x = 0 To ws.Cells(ws.Rows.Count, uCol).End(xlUp).Row - 1
        If unique(x) <> "" Then
        If Dir(ThisWorkbook.Path & "\" & unique(x) & ".xlsx", vbNormal) = "" Then 'If unique file does not exist
            'add workbook
            Workbooks.Add: Set wb(x) = ActiveWorkbook
            ws.Range(ws.Cells(1, 1), ws.Cells(1, uCol)).Copy wb(x).Sheets(1).Cells(1, 1)
        Else ' open workbook
         Workbooks.Open Filename:=ThisWorkbook.Path & "\" & unique(x) & ".xlsx"
         Set wb(x) = ActiveWorkbook
        End If
    
            
            'loop to find matching items in ws and copy over
            For y = 2 To ws.Cells(ws.Rows.Count, uCol).End(xlUp).Row
                If ws.Cells(y, uCol) = unique(x) Then
                    'copy full formula over
                    'ws.Range(ws.Cells(y, 1), ws.Cells(y, uCol)).Copy wb(x).Sheets(1).Cells(WorksheetFunction.CountA(wb(x).Sheets(1).Columns(uCol)) + 1, 1)
                    'to copy and paste values
                    ws.Range(ws.Cells(y, 1), ws.Cells(y, uCol)).Copy
                    wb(x).Sheets(1).Cells(WorksheetFunction.CountA(wb(x).Sheets(1).Columns(uCol)) + 1, 1).PasteSpecial (xlPasteValues)
                    wb(x).Sheets(1).Cells(WorksheetFunction.CountA(wb(x).Sheets(1).Columns(uCol)), 6).Value = Format(Date, "dd mmm yyyy")
                End If
            Next y
            'autofit
            wb(x).Sheets(1).Columns.AutoFit
            'save when done
            wb(x).SaveAs ThisWorkbook.Path & "\" & unique(x) & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False     '   & " " & Format(Now(), "mm-dd-yy")
            wb(x).Close SaveChanges:=True
        Else
            'once reaching blank parts of the array, quit loop
            Exit For
        End If
    
      Next x
    ' Master File change to current date:
    Dim Lr As Long: Let Lr = ws.Cells(Rows.Count, 6).End(xlUp).Row
     ws.Range("F2:F" & Lr & "").Value = Format(Date, "dd mmm yyyy")
    
    ' Application.ScreenUpdating = True
    ' Application.Calculation = xlCalculationAutomatic
    
    ErrHandler:
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
    
    End Sub
    
    Public Function CountIfArray(lookup_value As String, lookup_array As Variant)
        CountIfArray = Application.Count(Application.Match(lookup_value, lookup_array, 0))
    End Function
    A Folk, A Forum, A Fuhrer ….

  7. #27
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    Second Code for RaghavendraPrabhu Make macro create unique files only once.If files exist amend them.

    Second Code for RaghavendraPrabhu
    For this Post in main Excel Forum
    http://www.excelfox.com/forum/showth...0541#post10541



    Code:
    
    Option Explicit
    
    ' https://stackoverflow.com/questions/46368771/how-to-create-a-new-workbook-for-each-unique-value-in-a-column?rq=1
    ' http://www.excelfox.com/forum/showthread.php/2237-Make-macro-create-unique-files-only-once-If-files-exist-amend-them
    Sub ExportByName()
    Dim unique(1000) As String
    Dim wb(1000) As Workbook
    Dim ws As Worksheet
    Dim x As Long
    Dim y As Long
    Dim ct As Long
    Dim uCol As Long
    
    'On Error GoTo ErrHandler
    
    'Application.ScreenUpdating = False
    'Application.Calculation = xlCalculationManual
    
    'Your main worksheet info.
     Set ws = ActiveWorkbook.Sheets("Sheet1")
     Let uCol = 7 'Column G
    Dim Strt As Long, Stp As Long: Let Strt = ws.Cells(ws.Rows.Count, 6).End(xlUp).Row + 1: Stp = ws.Cells(ws.Rows.Count, uCol).End(xlUp).Row
     Let ws.Range("F" & Strt & ":F" & Stp & "").Value = Format(Date, "dd mmm yyyy") ' adding the dates to the new rows
     Let ws.Range("A" & Strt & ":A" & Stp & "").Value = Application.Evaluate("=row(" & Strt & ":" & Stp & ")-1") ' adding the S.no. to the new rows
    
    ct = 0
    
    'get a unique list of users
    For x = 2 To ws.Cells(ws.Rows.Count, uCol).End(xlUp).Row
        If CountIfArray(ActiveSheet.Cells(x, uCol), unique()) = 0 Then
            unique(ct) = ActiveSheet.Cells(x, uCol).Text
            ct = ct + 1
        End If
    Next x
    
    'loop through the unique list
      For x = 0 To ws.Cells(ws.Rows.Count, uCol).End(xlUp).Row - 1
        If unique(x) <> "" Then
        If Dir(ThisWorkbook.Path & "\" & unique(x) & ".xlsx", vbNormal) = "" Then 'If unique file does not exist
            'add workbook
            Workbooks.Add: Set wb(x) = ActiveWorkbook
            ws.Range(ws.Cells(1, 1), ws.Cells(1, uCol)).Copy wb(x).Sheets(1).Cells(1, 1)
        Else ' open workbook
         Workbooks.Open Filename:=ThisWorkbook.Path & "\" & unique(x) & ".xlsx"
         Set wb(x) = ActiveWorkbook
        End If
    
            
            'loop to find matching items in ws starting from where column F ( 6 )  has no entry and copy over
            'For y = ws.Cells(ws.Rows.Count, 6).End(xlUp).Row + 1 To ws.Cells(ws.Rows.Count, uCol).End(xlUp).Row
            For y = Strt To Stp
                If ws.Cells(y, uCol) = unique(x) Then
                    'copy full formula over
                    'ws.Range(ws.Cells(y, 1), ws.Cells(y, uCol)).Copy wb(x).Sheets(1).Cells(WorksheetFunction.CountA(wb(x).Sheets(1).Columns(uCol)) + 1, 1)
                    'to copy and paste values
                    ws.Range(ws.Cells(y, 1), ws.Cells(y, uCol)).Copy
                    wb(x).Sheets(1).Cells(WorksheetFunction.CountA(wb(x).Sheets(1).Columns(uCol)) + 1, 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
                    'wb(x).Sheets(1).Cells(WorksheetFunction.CountA(wb(x).Sheets(1).Columns(uCol)), 6).Value = Format(Date, "dd mmm yyyy")
                End If
            Next y
            'autofit
            wb(x).Sheets(1).Columns.AutoFit
            'save when done
            wb(x).SaveAs ThisWorkbook.Path & "\" & unique(x) & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False     '   & " " & Format(Now(), "mm-dd-yy")
            wb(x).Close SaveChanges:=True
        Else
            'once reaching blank parts of the array, quit loop
            Exit For
        End If
    
      Next x
    '' Master File change to current date:
    'Dim Lr As Long: Let Lr = ws.Cells(Rows.Count, 6).End(xlUp).Row
    ' ws.Range("F2:F" & Lr & "").Value = Format(Date, "dd mmm yyyy")
    
    ' Application.ScreenUpdating = True
    ' Application.Calculation = xlCalculationAutomatic
    
    ErrHandler:
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
    
    End Sub
    
    Public Function CountIfArray(lookup_value As String, lookup_array As Variant)
        CountIfArray = Application.Count(Application.Match(lookup_value, lookup_array, 0))
    End Function
    https://www.youtube.com/channel/UCnxwq2aGJRbjOo_MO54oaHA
    https://www.youtube.com/watch?v=QjEWAJ3d-jw&lc=UgxJLVpwY8fIla7G-pN4AaABAg.9BLeCWVhxdG9wgNsaS3Lp1
    https://www.youtube.com/watch?v=QjEWAJ3d-jw&lc=UgxJLVpwY8fIla7G-pN4AaABAg.9BLeCWVhxdG9wgR1EPUkhw
    https://www.youtube.com/watch?v=QjEWAJ3d-jw&lc=UgxJLVpwY8fIla7G-pN4AaABAg.9BLeCWVhxdG9wgNe_XC-jK
    https://www.youtube.com/watch?v=QjEWAJ3d-jw&lc=UgxJLVpwY8fIla7G-pN4AaABAg.9BLeCWVhxdG9wgNPOdiDuv
    https://www.youtube.com/watch?v=QjEWAJ3d-jw&lc=UgxJLVpwY8fIla7G-pN4AaABAg.9BLeCWVhxdG9wgN7AC7wAc
    https://www.youtube.com/watch?v=bs-urI_o8jo&lc=UgyBACXgNY4j_cHgH5J4AaABAg.9oTkVdzfqfm9wlhQrYJP 3M
    https://www.youtube.com/watch?v=bs-urI_o8jo&lc=UgxYgiEZuS9I3xkjJv54AaABAg
    https://www.youtube.com/watch?v=DVFFApHzYVk&lc=Ugyi578yhj9zShmhuPl4AaABAg
    https://www.youtube.com/watch?v=GqzeFYWjTxI&lc=UgxvxlnuTRWiV6MUZB14AaABAg
    https://www.youtube.com/watch?v=_8i1fVEi5WY&lc=Ugz0ptwE5J-2CpX4Lzh4AaABAg
    https://www.youtube.com/watch?v=0ltJS7uHfK4&lc=UgxoHAw8RwR7VmyVBUt4AaABAg.9C-br0lEl8V9xI0_6pCaR9
    https://www.youtube.com/watch?v=0ltJS7uHfK4&lc=Ugz5DDCMqmHLeEjUU8t4AaABAg.9bl7m03Onql9xI-ar3Z0ME
    https://www.youtube.com/watch?v=0ltJS7uHfK4&lc=UgxYnpd9leriPmc8rPd4AaABAg.9gdrYDocLIm9xI-2ZpVF-q
    https://www.youtube.com/watch?v=0ltJS7uHfK4&lc=UgyjoPLjNeIAOMVH_u94AaABAg.9id_Q3FO8Lp9xHyeYSuv 1I
    https://www.reddit.com/r/windowsxp/comments/pexq9q/comment/k81ybvj/?utm_source=reddit&utm_medium=web2x&context=3
    https://www.youtube.com/watch?v=bs-urI_o8jo&lc=UgxYgiEZuS9I3xkjJv54AaABAg
    https://www.youtube.com/watch?v=bs-urI_o8jo&lc=UgyBACXgNY4j_cHgH5J4AaABAg.9oTkVdzfqfm9wlhQrYJP 3M
    ttps://www.youtube.com/watch?v=LP9fz2DCMBE
    https://www.youtube.com/watch?v=LP9fz2DCMBE&lc=UgzbPgJUMCztIOQDym14AaABAg
    https://www.youtube.com/watch?v=LP9fz2DCMBE&lc=UgzbPgJUMCztIOQDym14AaABAg.9wdo_rWgxSH9wdpcYqrv p8
    ttps://www.youtube.com/watch?v=bFxnXH4-L1A
    https://www.youtube.com/watch?v=bFxnXH4-L1A&lc=UgxuODisjo6cvom7O-B4AaABAg.9w_AeS3JiK09wdi2XviwLG
    https://www.youtube.com/watch?v=bFxnXH4-L1A&lc=UgxBU39bTptFznDC1PJ4AaABAg
    ttps://www.youtube.com/watch?v=GqzeFYWjTxI
    https://www.youtube.com/watch?v=GqzeFYWjTxI&lc=UgwJnJDJ5JT8hFvibt14AaABAg
    https://www.youtube.com/channel/UCnxwq2aGJRbjOo_MO54oaHA
    Last edited by DocAElstein; 11-20-2023 at 03:43 PM.
    A Folk, A Forum, A Fuhrer ….

  8. #28
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    Example VBA available checked Libraries Info, (Helpful for Later Early Binding)

    Some sample data for other Posts and Threads:
    http://www.excelfox.com/forum/showth...ing-Techniques

    Using this code: _..
    Code:
     Sub Its() ' snb 2017
    Dim It As Variant
      For Each It In ThisWorkbook.VBProject.References
      Dim strIts As String
       Let strIts = strIts & "Description:" & vbTab & It.Description & vbCr & "Name:" & vbTab & vbTab & It.Name & vbCr & "Buitin:" & vbTab & vbTab & It.BuiltIn & vbCr & "Minor:" & vbTab & vbTab & It.minor & vbCr & "Major:" & vbTab & vbTab & It.major & vbCr & "FullPath:" & vbTab & vbTab & It.fullpath & vbCr & "GUID:" & vbTab & vbTab & It.GUID & vbCr & "Type:" & vbTab & vbTab & It.Type & vbCr & "Isbroken:" & vbTab & vbTab & It.isbroken & vbCr & vbCr
      Next It
    Debug.Print strIts ' From  VB Editor Ctrl+g  to get Immediate Window from which info can be copied
    End Sub
    _.. you can get text displayed in the Immediate Window which you can copy.




    Some example VBA available checked Libraries:
    VBACheckedAvailableLibraries_1.JPG : https://imgur.com/scnHhHR
    VBACheckedAvailableLibraries_1.JPG
    Here below the code output based on running in a Workbook which has the libraries checked as in the above screenshot:
    Code:
    Description:    Visual Basic For Applications
    Name:       VBA
    Buitin:     Wahr
    Minor:      0
    Major:      4
    FullPath:       C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6.DLL
    GUID:       {000204EF-0000-0000-C000-000000000046}
    Type:       0
    Isbroken:       Falsch
    
    Description:    Microsoft Excel 12.0 Object Library
    Name:       Excel
    Buitin:     Wahr
    Minor:      6
    Major:      1
    FullPath:       C:\Program Files\Microsoft Office\Office12\EXCEL.EXE
    GUID:       {00020813-0000-0000-C000-000000000046}
    Type:       0
    Isbroken:       Falsch
    
    Description:    OLE Automation
    Name:       stdole
    Buitin:     Falsch
    Minor:      0
    Major:      2
    FullPath:       C:\Windows\system32\stdole2.tlb
    GUID:       {00020430-0000-0000-C000-000000000046}
    Type:       0
    Isbroken:       Falsch
    
    Description:    Microsoft Office 12.0 Object Library
    Name:       Office
    Buitin:     Falsch
    Minor:      4
    Major:      2
    FullPath:       C:\Program Files\Common Files\Microsoft Shared\OFFICE12\MSO.DLL
    GUID:       {2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}
    Type:       0
    Isbroken:       Falsch
    
    Description:    Microsoft HTML Object Library
    Name:       MSHTML
    Buitin:     Falsch
    Minor:      0
    Major:      4
    FullPath:       C:\Windows\system32\mshtml.tlb
    GUID:       {3050F1C5-98B5-11CF-BB82-00AA00BDCE0B}
    Type:       0
    Isbroken:       Falsch
    
    Description:    Microsoft XML, v6.0
    Name:       MSXML2
    Buitin:     Falsch
    Minor:      0
    Major:      6
    FullPath:       C:\Windows\System32\msxml6.dll
    GUID:       {F5078F18-C551-11D3-89B9-0000F81FE221}
    Type:       0
    Isbroken:       Falsch
    
    Description:    Microsoft Forms 2.0 Object Library
    Name:       MSForms
    Buitin:     Falsch
    Minor:      0
    Major:      2
    FullPath:       C:\Windows\system32\FM20.DLL
    GUID:       {0D452EE1-E08F-101A-852E-02608C4D0BB4}
    Type:       0
    Isbroken:       Falsch
    This infomation above can be useful for Later Early Binding.

    _.__________________

    Note that for Broken Libraries the GUID infomation appears to be available also, so I would tend to use .AddFromguid for Later Early Binding simply as I may heve a better chance of collecting before hand the GUID infomation than I do for other properties:
    MidTestJeffMoseToolsBroke.JPG : https://imgur.com/ZKq8BTr
    MidTestJeffMoseToolsBroke.JPG

    MostPropertiesOfbrokenreferencesDontWork.JPG : https://imgur.com/FcVjDLl
    MostPropertiesOfbrokenreferencesDontWork.jpg
    In this example , the last two Library references were broken, but the GUID infomation is still available
    Last edited by DocAElstein; 03-25-2018 at 10:51 AM.
    A Folk, A Forum, A Fuhrer ….

  9. #29
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    Results for RaghavendraPrabhu

    Table of final results for solution to this Thread:
    http://www.excelfox.com/forum/showth...0548#post10548
    Using Excel 2007 32 bit
    S No
    Item
    Price
    Qty
    Total
    Date Distributed
    Task1
    Task2
    Task3
    Task4
    Date Tasks Completed
    Date Consolidated
    Comments
    Team Member
    1
    A1
    $ 25.00
    7
    $ 175.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    22.Mrz 18
    Raghu
    2
    A5
    $ 95.00
    52
    $ 4,940.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    22.Mrz 18
    Raghu
    3
    B1
    $ 985.00
    65
    $ 64,025.00
    17. Mrz 18
    Raghu
    4
    B5
    $ 85.00
    7
    $ 595.00
    18. Mrz 18
    Done N/A Done N/A
    18.Mrz 18
    22.Mrz 18
    Raghu
    5
    C1
    $ 41.00
    52
    $ 2,132.00
    18. Mrz 18
    N/A Done N/A Done
    18.Mrz 18
    22.Mrz 18
    Raghu
    6
    C5
    $ 655.00
    65
    $ 42,575.00
    20. Mrz 18
    Done N/A Done N/A
    20.Mrz 18
    22.Mrz 18
    Raghu
    7
    D1
    $ 1,258.00
    7
    $ 8,806.00
    20. Mrz 18
    N/A Done N/A Done
    20.Mrz 18
    22.Mrz 18
    Raghu
    8
    D5
    $ 44.00
    52
    $ 2,288.00
    22. Mrz 18
    Raghu
    9
    D10
    $ 55.00
    22
    $ 1,210.00
    22. Mrz 18
    N/A Done N/A Done
    22.Mrz 18
    22.Mrz 18
    Raghu
    10
    A3
    $ 22.00
    9
    $ 198.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    Raju
    11
    A7
    $ 11.00
    12
    $ 132.00
    17. Mrz 18
    Raju
    12
    B3
    $ 223.00
    85
    $ 18,955.00
    17. Mrz 18
    N/A Done N/A Done
    17.Mrz 18
    Raju
    13
    B7
    $ 63.00
    9
    $ 567.00
    18. Mrz 18
    Done N/A Done N/A
    18.Mrz 18
    Raju
    14
    C3
    $ 96.00
    12
    $ 1,152.00
    18. Mrz 18
    N/A Done N/A Done
    18.Mrz 18
    Raju
    15
    C7
    $ 11.00
    85
    $ 935.00
    20. Mrz 18
    Done N/A Done N/A
    20.Mrz 18
    Raju
    16
    D3
    $ 332.00
    9
    $ 2,988.00
    20. Mrz 18
    N/A Done N/A Done
    20.Mrz 18
    Raju
    17
    D7
    $ 566.00
    12
    $ 6,792.00
    22. Mrz 18
    Done N/A Done N/A
    22.Mrz 18
    Raju
    18
    A4
    $ 45.00
    41
    $ 1,845.00
    17. Mrz 18
    Ramesh
    19
    A8
    $ 36.00
    32
    $ 1,152.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    Ramesh
    20
    B4
    $ 41.00
    96
    $ 3,936.00
    17. Mrz 18
    N/A Done N/A Done
    17.Mrz 18
    Ramesh
    21
    B8
    $ 52.00
    41
    $ 2,132.00
    18. Mrz 18
    Done N/A Done N/A
    18.Mrz 18
    Ramesh
    22
    C4
    $ 85.00
    32
    $ 2,720.00
    18. Mrz 18
    N/A Done N/A Done
    18.Mrz 18
    Ramesh
    23
    C8
    $ 458.00
    96
    $ 43,968.00
    20. Mrz 18
    Done N/A Done N/A
    20.Mrz 18
    Ramesh
    24
    D4
    $ 22.00
    41
    $ 902.00
    20. Mrz 18
    N/A Done N/A Done
    20.Mrz 18
    Ramesh
    25
    D8
    $ 332.00
    32
    $ 10,624.00
    22. Mrz 18
    Done N/A Done N/A
    22.Mrz 18
    Ramesh
    26
    A2
    $ 35.00
    8
    $ 280.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    Ravi
    27
    A6
    $ 78.00
    63
    $ 4,914.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    Ravi
    28
    B2
    $ 11.00
    47
    $ 517.00
    17. Mrz 18
    N/A Done N/A Done
    17.Mrz 18
    Ravi
    29
    B6
    $ 96.00
    8
    $ 768.00
    18. Mrz 18
    Ravi
    30
    C2
    $ 74.00
    63
    $ 4,662.00
    18. Mrz 18
    Ravi
    31
    C6
    $ 365.00
    47
    $ 17,155.00
    20. Mrz 18
    Ravi
    32
    D2
    $ 33.00
    8
    $ 264.00
    20. Mrz 18
    N/A Done N/A Done
    20.Mrz 18
    Ravi
    33
    D6
    $ 55.00
    63
    $ 3,465.00
    22. Mrz 18
    Done N/A Done N/A
    22.Mrz 18
    Ravi
    34
    A9
    $ 12.00
    65
    $ 780.00
    22. Mrz 18
    Sangeeta
    35
    B9
    $ 45.00
    47
    $ 2,115.00
    22. Mrz 18
    Done N/A Done N/A
    21.Mrz 18
    Sangeeta
    36
    C9
    $ 56.00
    85
    $ 4,760.00
    22. Mrz 18
    N/A Done N/A Done
    21.Mrz 18
    Sangeeta
    37
    D9
    $ 89.00
    96
    $ 8,544.00
    22. Mrz 18
    Done N/A Done N/A
    21.Mrz 18
    Sangeeta
    38
    A10
    $ 25.00
    3
    $ 75.00
    22. Mrz 18
    N/A Done N/A Done
    21.Mrz 18
    Sangeeta
    Worksheet: Sheet1
    Last edited by DocAElstein; 03-23-2018 at 10:02 PM.
    A Folk, A Forum, A Fuhrer ….

  10. #30
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,458
    Rep Power
    10

    Final Results for Code 2b) for Raghavendra

    Final Results for this Thread Post
    http://www.excelfox.com/forum/showth...0575#post10575

    S No
    Item
    Price
    Qty
    Total
    Date Distributed
    Task1
    Task2
    Task3
    Task4
    Date Tasks Completed
    Date Consolidated
    Comments
    Team Member
    1
    A1
    $ 25.00
    7
    $ 175.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    24.Mrz 18
    Raghu
    2
    A5
    $ 95.00
    52
    $ 4,940.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    24.Mrz 18
    Raghu
    3
    B1
    $ 985.00
    65
    $ 64,025.00
    17. Mrz 18
    Raghu
    4
    B5
    $ 85.00
    7
    $ 595.00
    18. Mrz 18
    Done N/A Done N/A
    18.Mrz 18
    24.Mrz 18
    Raghu
    5
    C1
    $ 41.00
    52
    $ 2,132.00
    18. Mrz 18
    N/A Done N/A Done
    18.Mrz 18
    24.Mrz 18
    Raghu
    6
    C5
    $ 655.00
    65
    $ 42,575.00
    20. Mrz 18
    Done N/A Done N/A
    20.Mrz 18
    24.Mrz 18
    Raghu
    7
    D1
    $ 1,258.00
    7
    $ 8,806.00
    20. Mrz 18
    N/A Done N/A Done
    20.Mrz 18
    24.Mrz 18
    Raghu
    8
    D5
    $ 44.00
    52
    $ 2,288.00
    22. Mrz 18
    Raghu
    9
    D10
    $ 55.00
    22
    $ 1,210.00
    22. Mrz 18
    N/A Done N/A Done
    22.Mrz 18
    24.Mrz 18
    Raghu
    10
    A3
    $ 22.00
    9
    $ 198.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    24.Mrz 18
    Raju
    11
    A7
    $ 11.00
    12
    $ 132.00
    17. Mrz 18
    Raju
    12
    B3
    $ 223.00
    85
    $ 18,955.00
    17. Mrz 18
    N/A Done N/A Done
    17.Mrz 18
    24.Mrz 18
    Raju
    13
    B7
    $ 63.00
    9
    $ 567.00
    18. Mrz 18
    Done N/A Done N/A
    18.Mrz 18
    24.Mrz 18
    Raju
    14
    C3
    $ 96.00
    12
    $ 1,152.00
    18. Mrz 18
    N/A Done N/A Done
    18.Mrz 18
    24.Mrz 18
    Raju
    15
    C7
    $ 11.00
    85
    $ 935.00
    20. Mrz 18
    Done N/A Done N/A
    20.Mrz 18
    24.Mrz 18
    Raju
    16
    D3
    $ 332.00
    9
    $ 2,988.00
    20. Mrz 18
    N/A Done N/A Done
    20.Mrz 18
    24.Mrz 18
    Raju
    17
    D7
    $ 566.00
    12
    $ 6,792.00
    22. Mrz 18
    Done N/A Done N/A
    22.Mrz 18
    24.Mrz 18
    Raju
    18
    A4
    $ 45.00
    41
    $ 1,845.00
    17. Mrz 18
    Ramesh
    19
    A8
    $ 36.00
    32
    $ 1,152.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    24.Mrz 18
    Ramesh
    20
    B4
    $ 41.00
    96
    $ 3,936.00
    17. Mrz 18
    N/A Done N/A Done
    17.Mrz 18
    24.Mrz 18
    Ramesh
    21
    B8
    $ 52.00
    41
    $ 2,132.00
    18. Mrz 18
    Done N/A Done N/A
    18.Mrz 18
    24.Mrz 18
    Ramesh
    22
    C4
    $ 85.00
    32
    $ 2,720.00
    18. Mrz 18
    N/A Done N/A Done
    18.Mrz 18
    24.Mrz 18
    Ramesh
    23
    C8
    $ 458.00
    96
    $ 43,968.00
    20. Mrz 18
    Done N/A Done N/A
    20.Mrz 18
    24.Mrz 18
    Ramesh
    24
    D4
    $ 22.00
    41
    $ 902.00
    20. Mrz 18
    N/A Done N/A Done
    20.Mrz 18
    24.Mrz 18
    Ramesh
    25
    D8
    $ 332.00
    32
    $ 10,624.00
    22. Mrz 18
    Done N/A Done N/A
    22.Mrz 18
    24.Mrz 18
    Ramesh
    26
    A2
    $ 35.00
    8
    $ 280.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    24.Mrz 18
    Ravi
    27
    A6
    $ 78.00
    63
    $ 4,914.00
    17. Mrz 18
    Done N/A Done N/A
    17.Mrz 18
    24.Mrz 18
    Ravi
    28
    B2
    $ 11.00
    47
    $ 517.00
    17. Mrz 18
    N/A Done N/A Done
    17.Mrz 18
    24.Mrz 18
    Ravi
    29
    B6
    $ 96.00
    8
    $ 768.00
    18. Mrz 18
    Ravi
    30
    C2
    $ 74.00
    63
    $ 4,662.00
    18. Mrz 18
    Ravi
    31
    C6
    $ 365.00
    47
    $ 17,155.00
    20. Mrz 18
    Ravi
    32
    D2
    $ 33.00
    8
    $ 264.00
    20. Mrz 18
    N/A Done N/A Done
    20.Mrz 18
    24.Mrz 18
    Ravi
    33
    D6
    $ 55.00
    63
    $ 3,465.00
    22. Mrz 18
    Done N/A Done N/A
    22.Mrz 18
    24.Mrz 18
    Ravi
    34
    A9
    $ 12.00
    65
    $ 780.00
    22. Mrz 18
    Sangeeta
    35
    B9
    $ 45.00
    47
    $ 2,115.00
    22. Mrz 18
    Done N/A Done N/A
    21.Mrz 18
    24.Mrz 18
    Sangeeta
    36
    C9
    $ 56.00
    85
    $ 4,760.00
    22. Mrz 18
    N/A Done N/A Done
    21.Mrz 18
    24.Mrz 18
    Sangeeta
    37
    D9
    $ 89.00
    96
    $ 8,544.00
    22. Mrz 18
    Done N/A Done N/A
    21.Mrz 18
    24.Mrz 18
    Sangeeta
    38
    A10
    $ 25.00
    3
    $ 75.00
    22. Mrz 18
    N/A Done N/A Done
    21.Mrz 18
    24.Mrz 18
    Sangeeta
    Worksheet: Sheet1
    Last edited by DocAElstein; 03-24-2018 at 02:22 PM.
    A Folk, A Forum, A Fuhrer ….

Similar Threads

  1. VBA to Reply All To Latest Email Thread
    By pkearney10 in forum Outlook Help
    Replies: 11
    Last Post: 12-22-2020, 11:15 PM
  2. Appendix Thread. Diet Protokol Coding Adaptions
    By DocAElstein in forum Test Area
    Replies: 6
    Last Post: 09-05-2019, 10:45 AM
  3. Replies: 19
    Last Post: 04-20-2019, 02:38 PM
  4. Search List of my codes
    By PcMax in forum Excel Help
    Replies: 6
    Last Post: 08-03-2014, 08:38 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •