Range Empty for Dynamic Chart VBA
I'm trying to create a dynamic sourcedata on a chart in VBA as this can vary depending on the data being pulled in via a macro. So far I have:
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight)).Select
Worksheets("Vintage").Charts("Vintage_1").SetSourceData Rng, PlotBy:=xlColumns
However, when I step through the code in the set range command, my cells are being selected. When I run through the SetSourceData step nothing happens. When I hover over the Rng variable it says = nothing.
I've never really done dynamic charts before but I cannot understand why my range equals nothing when my range is being selected.
Thanks in advance.
excel vba excel-vba
add a comment |
I'm trying to create a dynamic sourcedata on a chart in VBA as this can vary depending on the data being pulled in via a macro. So far I have:
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight)).Select
Worksheets("Vintage").Charts("Vintage_1").SetSourceData Rng, PlotBy:=xlColumns
However, when I step through the code in the set range command, my cells are being selected. When I run through the SetSourceData step nothing happens. When I hover over the Rng variable it says = nothing.
I've never really done dynamic charts before but I cannot understand why my range equals nothing when my range is being selected.
Thanks in advance.
excel vba excel-vba
add a comment |
I'm trying to create a dynamic sourcedata on a chart in VBA as this can vary depending on the data being pulled in via a macro. So far I have:
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight)).Select
Worksheets("Vintage").Charts("Vintage_1").SetSourceData Rng, PlotBy:=xlColumns
However, when I step through the code in the set range command, my cells are being selected. When I run through the SetSourceData step nothing happens. When I hover over the Rng variable it says = nothing.
I've never really done dynamic charts before but I cannot understand why my range equals nothing when my range is being selected.
Thanks in advance.
excel vba excel-vba
I'm trying to create a dynamic sourcedata on a chart in VBA as this can vary depending on the data being pulled in via a macro. So far I have:
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight)).Select
Worksheets("Vintage").Charts("Vintage_1").SetSourceData Rng, PlotBy:=xlColumns
However, when I step through the code in the set range command, my cells are being selected. When I run through the SetSourceData step nothing happens. When I hover over the Rng variable it says = nothing.
I've never really done dynamic charts before but I cannot understand why my range equals nothing when my range is being selected.
Thanks in advance.
excel vba excel-vba
excel vba excel-vba
edited Nov 23 '18 at 13:55
Pᴇʜ
20.2k42650
20.2k42650
asked Nov 23 '18 at 13:34
Carlos80
138110
138110
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
Try this.
Sub test()
Dim Rng As Range
Dim obj As ChartObject
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight))
Set obj = Worksheets("Vintage").ChartObjects("Vintage_1")
With obj.Chart
.SetSourceData Rng, PlotBy:=xlColumns
End With
End Sub
add a comment |
actually the first line should give you an error, if I'm not mistaken. You cannot set a range to a ".select" statement.
Try deleting the ".select" at the end
Edit: when you're defining a continuous range (e.g. a table), you can use something cleaner:
set Rng = Sheets("Mapping Tables").Range("J13").CurrentRegion
Thanks, I've not used currentregion before, however I still can't seem to get my chart to update based on that range, just steps through the code but with no action (no error either).
– Carlos80
Nov 23 '18 at 13:55
We might need more code and a screenshot.
– SJR
Nov 23 '18 at 14:21
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53447707%2frange-empty-for-dynamic-chart-vba%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
Try this.
Sub test()
Dim Rng As Range
Dim obj As ChartObject
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight))
Set obj = Worksheets("Vintage").ChartObjects("Vintage_1")
With obj.Chart
.SetSourceData Rng, PlotBy:=xlColumns
End With
End Sub
add a comment |
Try this.
Sub test()
Dim Rng As Range
Dim obj As ChartObject
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight))
Set obj = Worksheets("Vintage").ChartObjects("Vintage_1")
With obj.Chart
.SetSourceData Rng, PlotBy:=xlColumns
End With
End Sub
add a comment |
Try this.
Sub test()
Dim Rng As Range
Dim obj As ChartObject
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight))
Set obj = Worksheets("Vintage").ChartObjects("Vintage_1")
With obj.Chart
.SetSourceData Rng, PlotBy:=xlColumns
End With
End Sub
Try this.
Sub test()
Dim Rng As Range
Dim obj As ChartObject
Set Rng = Sheets("Mapping Tables").Range("J13", Sheets("Mapping Tables").Range("J13").End(xlDown).End(xlToRight))
Set obj = Worksheets("Vintage").ChartObjects("Vintage_1")
With obj.Chart
.SetSourceData Rng, PlotBy:=xlColumns
End With
End Sub
answered Nov 23 '18 at 14:21
Dy.Lee
3,403159
3,403159
add a comment |
add a comment |
actually the first line should give you an error, if I'm not mistaken. You cannot set a range to a ".select" statement.
Try deleting the ".select" at the end
Edit: when you're defining a continuous range (e.g. a table), you can use something cleaner:
set Rng = Sheets("Mapping Tables").Range("J13").CurrentRegion
Thanks, I've not used currentregion before, however I still can't seem to get my chart to update based on that range, just steps through the code but with no action (no error either).
– Carlos80
Nov 23 '18 at 13:55
We might need more code and a screenshot.
– SJR
Nov 23 '18 at 14:21
add a comment |
actually the first line should give you an error, if I'm not mistaken. You cannot set a range to a ".select" statement.
Try deleting the ".select" at the end
Edit: when you're defining a continuous range (e.g. a table), you can use something cleaner:
set Rng = Sheets("Mapping Tables").Range("J13").CurrentRegion
Thanks, I've not used currentregion before, however I still can't seem to get my chart to update based on that range, just steps through the code but with no action (no error either).
– Carlos80
Nov 23 '18 at 13:55
We might need more code and a screenshot.
– SJR
Nov 23 '18 at 14:21
add a comment |
actually the first line should give you an error, if I'm not mistaken. You cannot set a range to a ".select" statement.
Try deleting the ".select" at the end
Edit: when you're defining a continuous range (e.g. a table), you can use something cleaner:
set Rng = Sheets("Mapping Tables").Range("J13").CurrentRegion
actually the first line should give you an error, if I'm not mistaken. You cannot set a range to a ".select" statement.
Try deleting the ".select" at the end
Edit: when you're defining a continuous range (e.g. a table), you can use something cleaner:
set Rng = Sheets("Mapping Tables").Range("J13").CurrentRegion
edited Nov 23 '18 at 14:18
SJR
11.5k31116
11.5k31116
answered Nov 23 '18 at 13:38
Bishonen_PL
1429
1429
Thanks, I've not used currentregion before, however I still can't seem to get my chart to update based on that range, just steps through the code but with no action (no error either).
– Carlos80
Nov 23 '18 at 13:55
We might need more code and a screenshot.
– SJR
Nov 23 '18 at 14:21
add a comment |
Thanks, I've not used currentregion before, however I still can't seem to get my chart to update based on that range, just steps through the code but with no action (no error either).
– Carlos80
Nov 23 '18 at 13:55
We might need more code and a screenshot.
– SJR
Nov 23 '18 at 14:21
Thanks, I've not used currentregion before, however I still can't seem to get my chart to update based on that range, just steps through the code but with no action (no error either).
– Carlos80
Nov 23 '18 at 13:55
Thanks, I've not used currentregion before, however I still can't seem to get my chart to update based on that range, just steps through the code but with no action (no error either).
– Carlos80
Nov 23 '18 at 13:55
We might need more code and a screenshot.
– SJR
Nov 23 '18 at 14:21
We might need more code and a screenshot.
– SJR
Nov 23 '18 at 14:21
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53447707%2frange-empty-for-dynamic-chart-vba%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown