Ask the Expert

Size issue with pasting large text fields using a VBA macro

I have run into a size issue with large text fields (e.g. over 1024). I am trying to get text fields of length 2992 from one worksheet cell to another using a VBA macro. The problem appears to be that VBA uses an internal paste buffer that is smaller than the Windows paste buffer. Is this true? If so, can I increase it? If not, is there a workaround?

The offending line of code is 'Sheets(tab_name).Cells(74, 2).Value = Sheets(sNewSheet).Cells(i + 206, 1).Value.'
While I've never run into the paste limit, I could see how it happens. What you're going to have to do is manually call the clipboard C API functions and do the copy and paste yourself. Charles Petzold's seminal "Programming Windows" shows how to do it in C. Additionally, there are plenty of code samples around the Internet on how to use the clipboard directly from VB.

This was first published in August 2002

Join the conversationComment

Share
Comments

    Results

    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.