Group:  Microsoft Excel ยป microsoft.public.excel.newusers
Thread: Data entered in one record is shifting to others

Geek News

Data entered in one record is shifting to others
shekpatrick 12/29/2008 7:07:01 PM
I have a large spreadsheet that is attempting to track folk's location over
the next few months.

Columns A thru AE are data type entries....columns AF thru IU are date
ranges. I am tracking/have entered over 300 records/rows.

I have had some previous help on coding to shade the interior of the date
cells based on what text entry that I make in the cell. Unfortunately, I
didn't think of or ask for the code to return the cell interior color to
white when i deleted the text entry...so I tried working the code so that it
would. Well, it does, but only for one cell at a time. Any
ideas?????????????????

Secondly, I will enter text into the date range cells, and they will
interior shade to the correct color. What I am noticing is that the text
entries into the date range cells will then "migrate" to other (row)
cells....causing my spreadsheet to be worthless.

At first I thought that I was causing it by using the auto filter function
and then cutting and pasting the date range text entries. So I quit using
the auto filter function to enter data...I only used it to view data.

Then I would use the sort function to set up a view that worked for me, then
I would enter the data one record at a time...and it appeared that the data
was not migrating into other (row) cells.

So now that I have built formulas and graphs...I go back and take a look at
the base spreadsheet...and find that the data has migrated!!!!!!!!!!!!!!!

I am tracking over 300 people...from Feb thru Sep....and the "calendar"
spreadsheet is worthless if data keeps migrating!!!

I am not sure what is causing this!!! Is it the Excel application
itself...or is it the code that I am using to change the interior color of
cells with text entries?????

Would appreciate it if someone could look, yet again, at the coding I am
using. Here it is:

Private Sub Worksheet_Change(ByVal Target As Range)
Const colorGray40 = 48
Const colorRed = 3
Const colorBlack = 1
Const colorSeaGreen = 50
Const colorBrightGreen = 4
Const colorTurquoise = 8
Const colorYellow = 6
Const colorLavender = 39
Const colorLightOrange = 45
Const colorWhite = 2
Const colorViolet = 13

If Target.Cells.Count > 1 Then
Exit Sub
End If
Select Case UCase(Trim(Target))
Case Is = "DB"
Target.Interior.ColorIndex = colorGray40
Target.Font.ColorIndex = colorGray40
Case Is = "DN"
Target.Interior.ColorIndex = colorBrightGreen
Target.Font.ColorIndex = colorBrightGreen
Case Is = "DS"
Target.Interior.ColorIndex = colorSeaGreen
Target.Font.ColorIndex = colorSeaGreen
Case Is = "DO"
Target.Interior.ColorIndex = colorTurquoise
Target.Font.ColorIndex = colorTurquoise
Case Is = "DJ"
Target.Interior.ColorIndex = colorRed
Target.Font.ColorIndex = colorRed
Case Is = "HH"
Target.Interior.ColorIndex = colorYellow
Target.Font.ColorIndex = colorYellow
Case Is = "PCS"
Target.Interior.ColorIndex = colorViolet
Target.Font.ColorIndex = colorViolet
Case Is = "PG"
Target.Interior.ColorIndex = colorLavender
Target.Font.ColorIndex = colorLavender
Case Is = "LV"
Target.Interior.ColorIndex = 1
Target.Font.ColorIndex = 1
Case Is = "TD"
Target.Interior.ColorIndex = 45
Target.Font.ColorIndex = 45
Case Is = ""
Target.Interior.ColorIndex = 2
Case Else
'do nothing
End Select
End Sub

thanks in advance!

patrick

Re: Data entered in one record is shifting to others
"Bernie Deitrick" <deitbe [ at ] consumer dot org> 12/30/2008 7:51:14 PM
Patrick,

For the first part, change

If Target.Cells.Count > 1 Then
Exit Sub
End If

to

Dim myC As Range

If Target.Cells.Count > 1 Then
For Each myC In Target
If myC.Value = "" Then
myC.Interior.ColorIndex = 2
End If
Next myC
Exit Sub
End If

For the other part, I'm really not sure what you mean by the data migrating - there is nothing in
the code that would move values.

HTH,
Bernie
MS Excel MVP


"shekpatrick" <shekpatrick[ at ]discussions.microsoft.com> wrote in message
news:6B6DB339-51BF-4D3D-9D55-0184531BA639[ at ]microsoft.com...
[Quoted Text]
>I have a large spreadsheet that is attempting to track folk's location over
> the next few months.
>
> Columns A thru AE are data type entries....columns AF thru IU are date
> ranges. I am tracking/have entered over 300 records/rows.
>
> I have had some previous help on coding to shade the interior of the date
> cells based on what text entry that I make in the cell. Unfortunately, I
> didn't think of or ask for the code to return the cell interior color to
> white when i deleted the text entry...so I tried working the code so that it
> would. Well, it does, but only for one cell at a time. Any
> ideas?????????????????
>
> Secondly, I will enter text into the date range cells, and they will
> interior shade to the correct color. What I am noticing is that the text
> entries into the date range cells will then "migrate" to other (row)
> cells....causing my spreadsheet to be worthless.
>
> At first I thought that I was causing it by using the auto filter function
> and then cutting and pasting the date range text entries. So I quit using
> the auto filter function to enter data...I only used it to view data.
>
> Then I would use the sort function to set up a view that worked for me, then
> I would enter the data one record at a time...and it appeared that the data
> was not migrating into other (row) cells.
>
> So now that I have built formulas and graphs...I go back and take a look at
> the base spreadsheet...and find that the data has migrated!!!!!!!!!!!!!!!
>
> I am tracking over 300 people...from Feb thru Sep....and the "calendar"
> spreadsheet is worthless if data keeps migrating!!!
>
> I am not sure what is causing this!!! Is it the Excel application
> itself...or is it the code that I am using to change the interior color of
> cells with text entries?????
>
> Would appreciate it if someone could look, yet again, at the coding I am
> using. Here it is:
>
> Private Sub Worksheet_Change(ByVal Target As Range)
> Const colorGray40 = 48
> Const colorRed = 3
> Const colorBlack = 1
> Const colorSeaGreen = 50
> Const colorBrightGreen = 4
> Const colorTurquoise = 8
> Const colorYellow = 6
> Const colorLavender = 39
> Const colorLightOrange = 45
> Const colorWhite = 2
> Const colorViolet = 13
>
> If Target.Cells.Count > 1 Then
> Exit Sub
> End If
> Select Case UCase(Trim(Target))
> Case Is = "DB"
> Target.Interior.ColorIndex = colorGray40
> Target.Font.ColorIndex = colorGray40
> Case Is = "DN"
> Target.Interior.ColorIndex = colorBrightGreen
> Target.Font.ColorIndex = colorBrightGreen
> Case Is = "DS"
> Target.Interior.ColorIndex = colorSeaGreen
> Target.Font.ColorIndex = colorSeaGreen
> Case Is = "DO"
> Target.Interior.ColorIndex = colorTurquoise
> Target.Font.ColorIndex = colorTurquoise
> Case Is = "DJ"
> Target.Interior.ColorIndex = colorRed
> Target.Font.ColorIndex = colorRed
> Case Is = "HH"
> Target.Interior.ColorIndex = colorYellow
> Target.Font.ColorIndex = colorYellow
> Case Is = "PCS"
> Target.Interior.ColorIndex = colorViolet
> Target.Font.ColorIndex = colorViolet
> Case Is = "PG"
> Target.Interior.ColorIndex = colorLavender
> Target.Font.ColorIndex = colorLavender
> Case Is = "LV"
> Target.Interior.ColorIndex = 1
> Target.Font.ColorIndex = 1
> Case Is = "TD"
> Target.Interior.ColorIndex = 45
> Target.Font.ColorIndex = 45
> Case Is = ""
> Target.Interior.ColorIndex = 2
> Case Else
> 'do nothing
> End Select
> End Sub
>
> thanks in advance!
>
> patrick
>


Home | Search | Terms | Imprint Contact
Newsgroups Reader - provided by WiredBox.Net