[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 450
  • Last Modified:

VB6 TRIM all textbox in form

Hello all

I normally use this code to TRIM a textbox
Text1.text = TRIM(Text1.text)

Open in new window


I would like to know how i can TRIM all testbox in my form in one single code instead of multiple code under all textbox separatly.

Is that possible?

How can i do that?

Thanks again for your help
0
Wilder1626
Asked:
Wilder1626
  • 8
  • 6
1 Solution
 
Martin LissRetired ProgrammerCommented:
Dim ctl As Control

For Each ctl In Controls
    If TypeOf ctl is Textbox Then
        Trim(ctl)
    End If
Next

Open in new window

0
 
Wilder1626Author Commented:
Hi MartinLiss

When i use that code, i still have a space in textbox. Look in State field

space
0
 
Martin LissRetired ProgrammerCommented:
I don't see a space (is it at the end?) but I believe you. Can you attach your workbook?
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
Wilder1626Author Commented:
Since i copy from excel and past it into a MSHFlexgrid, i wonder if i should TRIM it when i past into the grid instead of the textbox.

Can i trim all  cell in the MSHFlexgrid?

Paste function
    Dim sText As String
    Dim nFixedRows As Long
    Dim nFixedCols As Long
    Dim nRows As Long
    Dim nCols As Long

    nFixedRows = 1
    nFixedCols = 1

    sText = Clipboard.GetText

    nRows = UBound(Split(sText, vbCr)) + 1

    'Dim vRows As Variant
    'vRows = Split(sText, vbCr)
    'nCols = UBound(Split(vRows(0), vbTab)) + 1
    nCols = UBound(Split(Split(sText, vbCr)(0), vbTab)) + 1
    'Debug.Print nCols

    With MSHFlexGrid1
        .FixedRows = nFixedRows
        .FixedCols = nFixedCols

        .Rows = .FixedRows + nRows
        .Cols = .FixedCols + nCols
        .Row = .FixedRows
        .Col = .FixedCols  '(or whatever value you like)

        .RowSel = .Rows - 1
        .ColSel = .Cols - 1

        .Clip = Replace(sText, vbLf, "")
    End With

Open in new window

0
 
Martin LissRetired ProgrammerCommented:
Okay so it may not be a space that you need to remove. The first thing to try is to replace vblf in the Clip statement with vbcrlf (or do both)
0
 
Wilder1626Author Commented:
Ok, i have tried : .Clip = Replace(sText, vbcrlf , ""), but i still have the same space in the State field.

So strange
0
 
Wilder1626Author Commented:
If you copy all excel cell in yellow from the excel file and use the past function in the project in attachment, one of the cell will show in the Text1. You will see the empty space at the end.

Text1.text= Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 2))
excel-file-to-copy.zip
0
 
Martin LissRetired ProgrammerCommented:
Assuming that the space is at the end of the textbox, please put this someplace in your code  (substituting the name of your textbox) where it will execute. What does it tell you?
0
 
Wilder1626Author Commented:
I have  a Compile error: Expected Sub, Function, or Property when i use:
substituting Text1

Open in new window

0
 
Martin LissRetired ProgrammerCommented:
I'm sorry. I left out a very important line in my request.

Assuming that the space is at the end of the textbox, please put the following  someplace in your code  (substituting the name of your textbox) where it will execute. What does it tell you?

MsgBox Asc(Right(Text1, 1))

so perhaps in some command button code if the name of the textbox is MyTextBoxName you would put

MsgBox Asc(Right(MyTextBoxName, 1))
0
 
Wilder1626Author Commented:
Hi

It give me the result : 160
0
 
Wilder1626Author Commented:
So let me try this then:

Text1.Text = Replace(Text1.Text, Chr(160), "")
0
 
Wilder1626Author Commented:
Many thanks again for your help.

Now it works and it remove the empty spaces.

I will trim and replace char(160) also.
0
 
Martin LissRetired ProgrammerCommented:
You're welcome and I'm glad I was able to help.

Select the 'About Me' tab in my profile and you'll find links to some articles I've written that may interest you.
Marty - MVP 2009 to 2013
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

  • 8
  • 6
Tackle projects and never again get stuck behind a technical roadblock.
Join Now