Character Editing

Posted on 1998-08-29
Last Modified: 2013-12-03
Dear Experts,
    While writing a recent program of mine, I ran into a couple of problems that i side stepped in order to complete the project.  But now since I have the opportunity to go back, I am hoping to fix/solve those problems that i encountered.  Anyway, one of the main problems that I am having, is how to get my program to take a multi-line textbox and go through character by character to see if that character matches one that i specified earlier in the program.  If it does match, I would like it to replace the found character with a new character.
    An example of this would be, in the text box it said...
"Hi, how are you
I would like the program to recognize the comma and replace it with something like a hyphen.  I am using Visual Basic5.0 (sp3) under a windows95 platform.  Please help me out here.
Question by:xTrEaSoNx
  • 4
  • 3

Expert Comment

ID: 1431842
Would you like the program to replace as Text is typed in the TextBox or more like a Search and Replace at a later point?

Author Comment

ID: 1431843
  I would like it to replace it at a later time.  Like when a menu item is clicked.

Accepted Solution

mcix earned 50 total points
ID: 1431844
Here is one of many approaches:

Public Sub ReplaceAChar(SourceTextBox As TextBox, ReplaceThis As String, WithThat As String)

    Dim mlngTextLength As Long
    Dim mlngCurrentPosition As Long
    mlngTextLength = Len(SourceTextBox)
    For mlngCurrentPosition = 1 To mlngTextLength
        If Mid$(SourceTextBox.Text, mlngCurrentPosition, 1) = ReplaceThis Then
            SourceTextBox.SelStart = mlngCurrentPosition - 1
            SourceTextBox.SelLength = 1
            SourceTextBox.SelText = WithThat
        End If
End Sub

To use it you would code:

ReplaceAChar Text2, ",", "-"

This would replace the letter commas with hyphens

If this doesn't do what you want, then give me more details and I will get you something that does...
How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline


Author Comment

ID: 1431845
    I'm not sure what i'm doing wrong, but that code you gave me does nothing.  I have a multi-line textbox and a menuitem on my form.  i tried that code first in the declarations section of the form first and put the calling code in the menu and it had no result.  Second, i tried putting the code in a module and calling it from there.  Still no result.  Last of all i tried putting the code directly into the menu and still, no result.  Is there something that I'm missing?

please help,

Expert Comment

ID: 1431846

Sorry that you are having trouble...

The Public Sub should be in either the declarations of the form or in a separate BAS module.

The calling code should be in the Event you want to have the Search and Replace to occur.

Did you replace the Text2 with the name of your Textbox?


Author Comment

ID: 1431847
   I got it working,  thanks,this was a big help.

Expert Comment

ID: 1431848
No problem...

If you have any more problems/questions you can e-mail me @:

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

Introduction While answering a recent question about filtering a custom class collection, I realized that this could be accomplished with very little code by using the ScriptControl (SC) library.  This article will introduce you to the SC library a…
Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now