Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 18
Default Run macro automatically when a cell in a dynamic range changes

Hi

my problem is hopefully pretty simple.

my code so far looks like this:

Private Sub Worksheet_Change(ByVal target As Range)
Application.ScreenUpdating = False
If Union(target, Range("$B$76:$B$114")).Address = "$B$76:$B$114" Then
Run ("Model.Hide")
End If
Application.ScreenUpdating = True
End Sub

which works fine for the range $B$76:$B$114 however the row numbers are
prone to change.

I have setup a table thats location will not change, which will store
the reference start and the reference ends. This is located at B8
(start) and C8 (End).

what i am tring to do is get the information from B8 and C8 to replace
the B76 and B114 respectively.

any ideas?

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,302
Default Run macro automatically when a cell in a dynamic range changes

Hi Glimmer23.

Try:

Private Sub Worksheet_Change(ByVal target As Range)

Dim startCell As Range
Dim endCell As Range
Dim rng As Range

Set startCell = Me.Range(Me.Range("B8").Value)
Set endCell = Me.Range(Me.Range("C8").Value)

Set rng = Range(startCell, endCell)

If Not Intersect(target, rng) Is Nothing Then
Application.ScreenUpdating = False
Run "Model.MyHide"
End If
Application.ScreenUpdating = True

End Sub

I have intentionally changed the name of the called macro from Hide to
MyHide, because 'Hide' as a special significance for VBA and and the
potential subsequent confusion may cause subtle problems.


---
Regards,
Norman



wrote in message
oups.com...
Hi

my problem is hopefully pretty simple.

my code so far looks like this:

Private Sub Worksheet_Change(ByVal target As Range)
Application.ScreenUpdating = False
If Union(target, Range("$B$76:$B$114")).Address = "$B$76:$B$114" Then


End If
Application.ScreenUpdating = True
End Sub

which works fine for the range $B$76:$B$114 however the row numbers are
prone to change.

I have setup a table thats location will not change, which will store
the reference start and the reference ends. This is located at B8
(start) and C8 (End).

what i am tring to do is get the information from B8 and C8 to replace
the B76 and B114 respectively.

any ideas?



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 11,272
Default Run macro automatically when a cell in a dynamic range changes

sRange = b78 & ":" & C78
If Not Intersect(target, Range(sRange)) Is Nothing Then

--
HTH

Bob Phillips

wrote in message
oups.com...
Hi

my problem is hopefully pretty simple.

my code so far looks like this:

Private Sub Worksheet_Change(ByVal target As Range)
Application.ScreenUpdating = False
If Union(target, Range("$B$76:$B$114")).Address = "$B$76:$B$114" Then
Run ("Model.Hide")
End If
Application.ScreenUpdating = True
End Sub

which works fine for the range $B$76:$B$114 however the row numbers are
prone to change.

I have setup a table thats location will not change, which will store
the reference start and the reference ends. This is located at B8
(start) and C8 (End).

what i am tring to do is get the information from B8 and C8 to replace
the B76 and B114 respectively.

any ideas?



  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 18
Default Run macro automatically when a cell in a dynamic range changes

YOUR THE KING - been tring to get that for ages :) works as just hide -
but ill see if by change both to my hide if it speeds it up

thank you very much for your help

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,302
Default Run macro automatically when a cell in a dynamic range changes

Hi Glimmer23,

been tring to get that for ages :) works as just hide -
but ill see if by change both to my hide if it speeds it up


Using 'MyHide' (instead of 'Hide') will not increase execution speed. It is
offered, purely as advice, to prevent VBA from being confused later when,
perhaps, your code becomes more complex and more difficult to debug.

As a general rule of thumb, it is adivisable to avoid the use of VBA
reserved words in any elective naming process.

---
Regards,
Norman



wrote in message
oups.com...
YOUR THE KING - been tring to get that for ages :) works as just hide -
but ill see if by change both to my hide if it speeds it up

thank you very much for your help





  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 11,272
Default Run macro automatically when a cell in a dynamic range changes

oops, should be

sRange = range("b78").Value & ":" & range("C78")
If Not Intersect(target, Range(sRange)) Is Nothing Then
--
HTH

Bob Phillips

"Bob Phillips" wrote in message
...
sRange = b78 & ":" & C78
If Not Intersect(target, Range(sRange)) Is Nothing Then

--
HTH

Bob Phillips

wrote in message
oups.com...
Hi

my problem is hopefully pretty simple.

my code so far looks like this:

Private Sub Worksheet_Change(ByVal target As Range)
Application.ScreenUpdating = False
If Union(target, Range("$B$76:$B$114")).Address = "$B$76:$B$114" Then
Run ("Model.Hide")
End If
Application.ScreenUpdating = True
End Sub

which works fine for the range $B$76:$B$114 however the row numbers are
prone to change.

I have setup a table thats location will not change, which will store
the reference start and the reference ends. This is located at B8
(start) and C8 (End).

what i am tring to do is get the information from B8 and C8 to replace
the B76 and B114 respectively.

any ideas?





  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 18
Default Run macro automatically when a cell in a dynamic range changes

Ya didnt relise it was a reserved word - but i know that rule well and
changed it after i made my last post to MyHide because i have run into
reserved name problems before...

thanks again for your help.

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Dynamic Range Name Macro Jonathan Cooper Excel Discussion (Misc queries) 3 March 24th 08 09:04 PM
Dynamic range for autofill macro Jim G Excel Discussion (Misc queries) 2 April 23rd 07 05:46 AM
automatically update pivot tables when dynamic named range is expa Dave F Excel Discussion (Misc queries) 10 November 23rd 06 01:51 PM
Graphing a dynamic range that automatically picks up the most recent entry. gimiv Excel Worksheet Functions 2 July 10th 06 07:58 PM
Dynamic range in graphing macro Colin Macleod Excel Programming 2 November 1st 03 06:26 AM


All times are GMT +1. The time now is 10:15 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"