Solved

EXCEL - If cell contains more than 6 characters then go to other cell - How to?

Posted on 2016-08-15
3
99 Views
Last Modified: 2016-08-29
Hi Experts.
I need a simple formula that says if a certain cell has more than 6 characters do nothing and let cursor drop down to cell below.
If there is exactly 6 character then move cursor to another cell.

Thanks  for your help.
Capture.PNGDUMMY-FILE.xlsx
0
Comment
Question by:chris pike
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 27

Expert Comment

by:Glenn Ray
ID: 41757044
Re-stating your question to make sure I understand:
You want an automated procedure to move the cursor to cell H7 if the number of digits/characters in the currently-selected cell is six (6).

If so:
1) There is no formula that will do this; you'll have to use VBA to reselect cells given these conditions.
2) Your "H6" cell scenario is a contradiction.  If there are either six or more characters in H6, cell H7 would be selected.

What would be your expected response if there are less than six characters in a cell?  Halt there?  

-Glenn
0
 
LVL 18

Accepted Solution

by:
xtermie earned 500 total points
ID: 41765222
You need a macro to do that.
However Glenn is right, you need to work out the logic for this
Now, the following code will:
1) Perform your checks, as specified, for cell H2 (H3 in your reference)
Sub testx()
Dim ws As Worksheet
Set ws = Application.ActiveWorkbook.ActiveSheet

ws.Range("H2").Select
If Len(Selection.Value) = 6 Then
    ws.Range("H8").Select
Else
    If Len(Selection.Value) > 6 Then
        ws.Range("H2").Offset(1, 0).Select
    End If
End If
End Sub

Open in new window

2) Perform your checks as specified in the range you specify (H2 to H6)
Sub testx2()
Dim ws As Worksheet
Dim r As Range

Set ws = Application.ActiveWorkbook.ActiveSheet
Set r = ws.Range("H2:H6")

For Each Cell In r
Cell.Select
If Len(Selection.Value) = 6 Then
    ws.Range("H8").Select
Else
    If Len(Selection.Value) > 6 Then
        Selection.Offset(1, 0).Select
    End If
End If
Next
End Sub

Open in new window


Can be used in your Excel file as macros, hit Alt+F11 and then copy-->paste the macros
0
 

Author Closing Comment

by:chris pike
ID: 41774868
Thanks looks good.
0

Featured Post

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!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Workbook link problems after copying tabs to a new workbook? David Miller (dlmille) Intro Have you either copied sheets to a new workbook, and after having saved and opened that workbook, you find that there are links back to the original sou…
How to get Spreadsheet Compare 2016 working with the 64 bit version of Office 2016
The viewer will learn how to use the =DISCRINV command to create a discrete random variable, use this command to model a set of probabilities and outcomes in a Monte Carlo simulation, and learn how to find the standard deviation of a set of probabil…
This Micro Tutorial will demonstrate how to use a scrolling table in Microsoft Excel using the INDEX function.

751 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