« first day (1013 days earlier)      last day (2167 days later) » 
00:00 - 23:0023:00 - 00:00

12:00 AM
RELOAD!
[retailcoder/Rubberduck] 21 commits. 6651 additions. 3936 deletions.
[rubberduck-vba/Rubberduck] 17 commits. 12 opened issues. 4 closed issues. 51 issue comments. 5837 additions. 3602 deletions.
> No problems there, agreed 👍 Regarding todo list vs templates @comintern.
Would @retailcoder append/update his feature request with Github team if proven useful to RD as he mentioned tags with projects.
 
OK, quick test and GTG.
 
12:27 AM
> Just to clarify (and document a bit further), ByVal is supported here to explicitly pass the argument by value, but ByRef results in a compile error.
 
12:44 AM
Great. I plug the webcam and my keyboard stops working
 
Rebooting. If my keyboard is toast I won't be able to log back in. This is great.
 
^?
 
12:52 AM
On Screen Keyboard - OSK.exe
 
Yeah... Not coding with that lol
 
gets you logged in though
 
Yeah, you just open a command prompt and type osk.ex... oh wait.
 
lol
 
tap the webcam hard enough, and it's easy
 
12:55 AM
Why would a brand new camera with a win10 sticker on the box have a HAS_PROBLEM flag right out of the frakken box
WHY ME
Gosh restarting is taking forever
System uptime must have been measured in months lol
 
comintern@fidel ~/Rubberduck $ uptime
19:57:47 up 117 days, 21:21, 3 users, load average: 0.33, 0.49, 0.64
I cheat though - Linux.
Need to alias that to timesincelastpoweroutage.
 
no UPS?
> restarting
10 minutes
Ok 6
That dot circle is mesmerizing
 
Yeah - only about 15 minutes on the desktop though.
It shuts itself down after 10 minutes.
 
1:14 AM
Still restarting.. This is ridiculous
 
#RestartOftenRestartFast
 
holds down power button
counts to 10
beep
> Explore beyond limits
 
Closes uses Windows 10 for last time
 
Yeah. And then you can't even restart.
Drumroll
Keyboard works!
> Welcome
Ugh
 
Woot!
 
1:19 AM
Ok computer, come on.
 
Will naming an interface member Verify confuse the castle proxies?
 
Shouldn't
 
Cool
 
plugs camera
keyboard still works
 
@Mat'sMug I think a 0 became a 2 for a very very brief time, that's where your problem came from.
 
1:22 AM
camera no longer HAS_PROBLEM
 
[ComVisible(true)]
[Guid("077fead3-184a-475c-abcc-4af5ab8a7a76")]
public interface IFake
{
    object Returns(object value);
    object AssignsByRef(string parameter, object value);
    void RaisesError(int number = 0, string description = "");
    bool Verify(string parameter = null, object value = null, int times = 0);
}
Any other toys we want in there?
 
shouldn't Verify have a params parameter?
how do you verify that MsgBox was called with vbYesNo buttons and the expected message?
 
Yeah, I'd thought about that. It would need a different name though - no overloads in COM.
 
I think Verify should be void, it's pretty much an Assert call - we'll need to handle it with some VerifyHandler like we do with AssertHandler
(or figure out a clever hack to make that thing work)
 
Why not just have it call AssertHandler at the end of the test?
 
1:28 AM
actually it should be handled by the AssertHandler itself, if we want a failed Verify call to fail the test
 
^ TestEngine calls FakesProvider.CodeIsUnderTest = true;
Test runs, including any Fake setup.
 
> Just so I understand the grammar - why would we include the BYREF in the .g4 file if it wouldn't compile in VBA?
 
Fake collects the information from the hook.
TestEngine calls FakesProvider.CodeIsUnderTest = false;
 
Does anyone here have any experience making custom ribbons for Excel?
 
FakesProvider enumerates the Fakes.
...calls an internal Evaluate member.
The IFake runs the test, then asserts if it needs to.
The FakesProvider passes on the first Assert to the TestEngine.
Then destroys all the hooks.
Does that sound like a reasonable pattern?
 
1:31 AM
provider.Verify foo, bar '<~ passes
provider.Verify bar, foo '<~ fails
'test result = ?
 
Fails.
It needs to be provider.Fake.Verify foo, bar though.
...because it might also have to .OtherFake.Verify baz, 42
 
@IvenBach yep
what's up?
 
We could also split up the functionality into VerifyParameter(name, value) and VerifyCalls(count).
:considers implementing VBA predicates:
 
@ThunderFrame I'd ultimately like to make a utility for my office but have minimal experience with C# and no clue how to do so.
I'm heading home but will be back on within an hour.
 
you can make ribbons work with just XML and VBA - the entire ribbon functionality is embedded in the file.
 
1:37 AM
Excel 4 step? Is that like a Foxtrot?
 
Skip the hard crash light fandango
 
Well according to @ticker, it isn't doing the last step so it's doing a polka right now...
 
facepalm - Why can't I get a VBA procedure to accept an Optional String array argument?
 
ByRef?
 
Expected list separator or array?
 
1:45 AM
> People who you don’t know will be able to watch you.
Everything that happens in the video call can be recorded and made publicly available for later playback.
The moderator of the Hangout On Air is able to control your audio/video settings during the call (such as turning your camera on or off), and also has the ability to eject you from the call.
 
just Syntax Error
Public Function Foo(Optional sheetNames As Variant, Optional sheetNameStrings() as String)
 
Huh. On a Sub it gives the more specific error.
 
let me guess, on a property, it just works?
 
Only if it ends with End Sub?
 
Gosh, hangouts doesn't pick up the camera... But picks up the mic... Which is on the camera...
 
1:51 AM
sometimes you need to grant permissions to the camera.
in the app
 
@ThunderFrame Compile error: Optional argument must be a Variant or intrinsic type with a default value.
 
2:08 AM
we're live
 
@ThunderFrame Do you have any examples?
 
@Mat'sMug link?
 
All the best @Mat'sMug! And relax....
 
3:10 AM
dropped off YouTube - Can't get reception
 
 
1 hour later…
4:11 AM
Wow. 2 hours.
That means I've got about an hour to watch before I come in.
 
wow, that ended up much longer than I anticipated
 
Did I behave myself well enough?
 
sure :)
 
Ah, you can't really hear me.
And that was kind of embarrassing about the audio.
My computer always thinks I have an external mic connected, so I have to change it to use the internal mic.
I've never been on G+ before.
 
> @bclothier - There's a 2nd commit that followed that one that removed it again - I didn't find it until I was writing the unit tests. It's a bit ahem underspecified in the MS documentation.
 
4:21 AM
@IvenBach spreadsheet1.com/2048-download.html is a good example. IIRC it has 2 ribbons embedded (one for Office 2007, and one for 2010+)
 
Wow, FF is still recovering from the hangouts plugin.
 
> Also cleaned out some commented tokens that aren't in the grammar anymore - that's responsible for the preprocessor rebuild.
[rubberduck-vba/Rubberduck] build for commit dd3565d6 on unknown branch: AppVeyor build succeeded
[rubberduck-vba/Rubberduck] build for commit f8050008 on unknown branch: AppVeyor build succeeded
 
6:02 AM
I will catch up on the interview news later tonite
 
 
2 hours later…
7:56 AM
0
Q: excel VBA importing multiple worksheets slow

SatI use the following code to import multiple worksheets from another workbook and do some processing. the Importing time is too long. can any one suggest a more efficient way to import? Should I be looking in to more information in the source files for copy? I am not a professional developer, so ...

 
 
1 hour later…
9:07 AM
@IvenBach Ron de Bruin has sample ribbon learning stuff
http://www.rondebruin.nl/win/s2/win001.htm
http://www.contextures.com/excelribbonaddcustomtab.html
(learning to use shift+enter rather than Enter)
 
 
3 hours later…
12:01 PM
It's a pleasure to meet the face @Mat'sMug. There's a slight lag in the sound I note which resolves when I lowered the resolution from HD on youtube. Tricky at times to follow with my excellent lip-reading skills, will take me a while to get through two hours. Good and entertaining show. Thanks.
 
12:11 PM
@PeterMTaylor thanks!
By the end I was getting pretty tired though.. not enough sleep!
 
 
2 hours later…
2:14 PM
@Mat'sMug Yup, you probably got everything set up as quickly as you could after work, but if you did I'm glad. Hangouts is definitely flaky for some.
@Comintern Thumbs up to another FF user.
 
2:40 PM
@A.S.H ping! the RD chatroom is here :)
 
hello!
sorry had some trouble for login
how is all going?
 
hi!
 
you receive me?
 
@puzzlepiece87 Not for much longer if it does that again...
 
what's up @A.S.H
 
2:49 PM
^
 
yeah I wanted to give you more about the Excel message I'm having
I could not have the exact reason but the pattern is this
I have an xlsm file, with some trivial VB code
 
mkay
 
if i open then close the file, no message.
if i open it then lauch the VB editor
I have RD's logo then the editor, nothing weird so far
then close, close.. without even saving
in this case I get some "recovery" message
then something saying that Excel is not currently my default app for spreadsheets.
So this message appears only if I open the VB editor,
Whether or not it is RD is not sure, but I wanted to have you informed
 
huh
 
The recovery thing is probably #2782.
 
2:56 PM
^ that. but the default app stuff is well beyond the reach of RD
 
As far as the default app message is concerned, I'm not sure RD can influence that at all.
Have you ever installed Open Office or anything like that?
 
no i dont have openoffice
The link is what i am witnessing yes,
but with the additional "Excel is not..."
sorry I didn't see that link before
 
Is this Windows 10?
 
yep
sorry no
windows 8
at my office
 
And it's only on the recovery restart?
 
3:01 PM
yes, and it does not occur consistently
it seems like it occurs only if i open the vb editor and then close without doing anything
 
I'm thinking that's just some weirdness around what Excel is doing when it goes down. The recovery restart is entirely in the Excel domain, although it does sometimes try to load the recovery files as .xlsb.
 
@Comintern Ah, I have enough good reasons to use Firefox that Google's poor Hangouts plugin is not a top concern for me.
 
@A.S.H The VBE actually never really "closes" when you do that - it just hides all the windows.
 
i mean I close the editor and the file
 
I use Adblock Plus, Privacy Badger, Noscript, and one other add-on that I'm forgetting that I find invaluable.
 
3:08 PM
look I will try to prepare some test scnario and send it to you
 
@A.S.H You might also want to check to see if there are any strange files in your Users\You\AppData\Local\Microsoft\Office\UnsavedFiles directory.
I'm thinking that's an X-Y issue. Q: "Excel does odd things when it crashes." A: "Don't crash Excel."
 
nothing there. tried to see if it occurs after the patern, but the pattern has gone :(
yeah it had gone because i opened editor but didn't open any files inside
anyway the problem is not bothering for me
just wanted to have you informed
 
> I'm getting this bug all the time - variables that are assigned being flagged as not so. Quite often it seems that the setting of the variable is within an If..Then construct, but not always. Eg here's a very simple proc with this issue
```
Sub Tests()
Dim mynmr As String
Dim rng As Range
mynmr = HasNamedRange(ActiveCell)
Set rng = GetRangeFromNMR(mynmr)
Debug.Print Intersect(rng, ActiveSheet.Cells) Is Nothing
End Sub
```

This is flagged as "Variable rng is never assigned" which it
 
Thanks for letting us know. I'll throw it on top of the huge list of reasons we need to fix our shutdown issue. ;-)
 
okay ;)
 
3:18 PM
I watched from start to end, wonderful, nice to see you Mathieu, & Hosh https://twitter.com/rubberduckvba/status/841868630660915201
The whole 2 hours?!
 
4:04 PM
joelonsoftware.com/2005/05/11/making-wrong-code-look-wrong A long article but one that I think helps me understand the idea of 'code should be self documenting'.
 
Old but I'm going to be replacing a lot of my user-facing toggles with this: chandoo.org/wp/2013/12/05/on-off-switch-in-excel-vba
 
@IvenBach that's the article about Hungarian notation done right :)
 
@Mat'sMug I understand now why it was originally used.
 
I mentioned it in the interview
 
Haven't gotten to your interview yet.
That's next on my list.
That's you in the interview, right?
 
4:14 PM
e.g. we have VBE line/column coordinates which are 1-based. and then we have ANTLR token positions, with 0-based line/column coordinates...
@IvenBach yeah
 
Putting a face to an icon now.
 
..."proper Hungarian" would have been to use, instead of e.g. intLine and intColumn, actually useful prefixes like vbLine/vbColumn and tLine/tColumn where vb denotes a 1-based coordinate, and t (for "token") denotes a 0-based coordinate
so when you go and write code against the VBIDE API and use tLine and tColumn values, you know it's wrong, because they should be vbLine and vbColumn, the 1-based values.
that's "Apps Hungarian" - the actual, real, useful Hungarian notation. it makes wrong code look wrong
sticking a type prefix to every variable was never Charles Simonyi's intent
 
In my pursuit of continual research it finally makes sense when, how, and most importantly the why to use it. Previously I could never find anything that remotely explained it.
 
hence the "cargo-cult" aspect of it: people do it "because it's always done that way" without thinking about why.
and there are other solutions, too
 
How I miss that observational humorist...
 
4:22 PM
    /// <Summary>
    /// A 1-based selection point in a code module.
    /// </Summary>
    public struct CodeModuleCoordinate
    {
        public CodeModuleCoordinate(int line, int column)
        {
            Line = line;
            Column = column;
        }

        public int Line { get; }
        public int Column { get; }
    }
 
@Mat'sMug Who's "Hosh"?
:/
Serves me right, though; I misspelled someone's name just yesterday.
 
@Hosch250 who's "Mosh"?
oh
sorry man
 
No need.
 
Steve totally wrecked your name worse than that... and mine too :)
 
joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions in the paragraph near the bottom where it talks about 'In teaching someone about COM programming...' as well as the one above it makes sense that you can use it but you don't know why it works just that it does
 
4:37 PM
^ Thus code inspections in VBA. If COM is an abstraction of the WinAPI and OLE, VBA is an abstraction of that, and then user classes are an abstraction of the abstraction.
 
I'm at the use stage trying to progress to the why and how it works. I hope to get there with RD's help.
 
The why it works or the how it works?
 
Both. Edited my post.
 
If you know how [IUnknown](https://msdn.microsoft.com/en-us/library/windows/desktop/ms680509(v=vs.85).aspx) and [IDispatch](https://msdn.microsoft.com/en-us/library/windows/desktop/ms221608(v=vs.85).aspx) work,
then throw in a bit of [`VARIANT`](https://msdn.microsoft.com/en-us/library/windows/desktop/ms221627(v=vs.85).aspx) and [SAFEARRAY](https://msdn.microsoft.com/en-us/library/windows/desktop/ms221482(v=vs.85).aspx), you're pretty much there. The rest is syntax and window dressing.
Stupid markup...
 
lol, url with parentheses = Markdown #Fail
 
4:47 PM
They need to match their parenthesis.
Oh wait, that would break another edge case :/
 
WTH. I apparently suck at this.
That even broke the bold and underline.
 
5:08 PM
@Comintern Does the VBE have any access to the host that isn't exposed in the host's COM dll (the object model, or whatever that is)?
Because if it doesn't, it should technically be possible to build a whole new IDE to replace the VBE--and use whatever language we want.
 
I wouldn't want to dig into that
AFAIK the VBE talks to the host via IStream
 
@Hosch250 Yes. The host usually sinks a bajillion hooks into the VBE to support macro recording.
 
Oh, OK.
 
Within the first 5 mins @Mat'sMug says @Comintern is a wizard regarding RD. That's some high praise and I'm sure very deserved.
 
COM internals aren't my forte ;-)
or Win32 hooking
 
5:17 PM
Programming isn't mine.
 
I had a thought on testing unit testing. Is it possible to flag tests so they don't run in AppVeyor?
 
[Ignore]
other than that...
 
Hmmmm... may have to do it manually then. I was thinking of putting a workbook into the test project files that kicked off a bunch of test tests in Workbook_Open and triggering it with a build action or something along those lines.
I may just have to write flawless code instead.
4
 
6:10 PM
> This PR enhances name conflict discovery during Rename-Refactoring. The discovery logic now accounts for name conflicts resulting from renaming an identifier where itself, it's declaration, or another reference would cause conflicts. See also #2817.
[rubberduck-vba/Rubberduck] build for commit 03ed9a6a on unknown branch: AppVeyor build succeeded
 
6:54 PM
@Mat'sMug During your interview at around 25 mins you mentioned IoC framework. I read stackoverflow.com/questions/871405/… the question and answer.
Thanks for helping teach the neanderthal in me more about programming through RD.
 
You know, if I can figure out how to create arbitrary VBA user objects, RDInject wouldn't be that hard.
 
@Comintern arbitrary VBA user objects?
 
Yeah. Like you write a class in VBA and RD creates an instance of it. That's the holy grail.
 
So if I'm comfortable with making classes and using them in VBA that knowledge will help me learn RDInject?
 
There's currently no such thing as RDInject - I was just pointing out that it would be one of the things we'd be able to do if we can figure out how to new up VBA objects from .NET.
#WorkingOnIt
 
7:08 PM
Gotcha.
 
@Mat'sMug The host and VBE communicate using APC (or the underlying Core API).
 
7:27 PM
huh...
> Host documents and the VBA project contain pointers to each other, creating cycles. To break the cycles and shut down the document correctly, the host should call IVbaProject::Close when closing the document. VBA destroys as much of the project as possible and release as many back pointers to the host as it can. After this is done, the host document and its VBA project can be kept alive by references to it, such as running code. The host can choose to “zombie” its objects until all references to it are released. Objects that are “zombied” are those that must but cannot be destroyed, becau
ghost project == zombie project
 
OK, so how hard can it be to answer "is this VBA or VB.NET"?
That link it to VB.NET documentation, not VBA documentation. If you opened Visual Basic from Excel, you're programming in VBA. If you opened Visual Studio and referenced the Office Interop, you're programming in VB.NET. — Comintern 25 secs ago
 
7:48 PM
What am I doing wrong:
If (shape color condition) Then Toggle_ErrorPrevention (intShapeNumber)

Sub Toggle_ErrorPrevention(ByVal intShapeNumberVal As Integer)

Dim lngHLSegmentNumberingRow As Long
Dim lngClaimRemovalHaveWantedClaimsRow As Long
Dim lngClaimRemovalHaveUnwantedClaimsRow As Long


With ThisWorkbook.Sheets("Correction Type Options").Columns(1)
lngHLSegmentNumberingRow = .Find(What:="HL Segment Numbering", Lookat:=xlWhole).Row

"Automation Error: The Object invoked has disconnected from its clients." on the bottom line
 
@Mat'sMug 36 mins into your intervien.
But rept("it's *wrong*",4) in every sense...
 
It's Option Explicit, and I've tried activating the sheet and editing a cell and a few other things that have worked for other people.
 
@Mat'sMug "You don't name things after their type, you name things after what they're used for. They type is irrelevant, utterly meaningless."
 
For which part, all of my Hungarian notation or for shape color condition?
(shape color condition was just me making it readable for chat, it's really a long line)
 
How do you star your own post? I need to frame that on my wall.
 
7:58 PM
Are you talking to Mat about your new understanding of the article or pointing me towards the article for reading?
 
That article was really helpful in me understanding Hungarian notation. It's original intended use, and why @Mat'sMug is so emphatic about it in his interview.
 
Oh oh, thanks
 
I agree, it's a good article. I liked it and get the concept even though I still find Hungarian notation helpful for myself.
I find the type reminders to be helpful even though others do not need them - it makes it easier for me to follow the title of the article ("make wrong code look wrong") even though Joel doesn't need type reminders to help him do that
 
@puzzlepiece87 prnI vrbFind sbjIt vrbMakes nCode adjHarder prTo vrbRead
2
and the IDE already tells you what the type of a variable is (ctrl+i) - as does RD's status bar, and you're supposed to declare variables close to where you're using them anyway, and a procedure shouldn't be large enough to not fit the screen. Really, IMO there's simply no excuse for "systems hungarian".
 
8:21 PM
In VB script, where there aren't explicit types and everything is a variant, Hungarian can make wrong code look wrong.
If Not IsNull(vName) Then strName = CStr(vName) 'at least now I have a variable that I know has subtype string.
But, meh, who the F uses VB script? Oh yeah, system admins.
 
I'm improving right now on declaring variables close to where I'm using them - I'm in the middle of overhauling my programs with the help of your teaching on classes and the answer here: http://codereview.stackexchange.com/questions/156651/fixing-medical-claim-files-through-text-file-read-write
I bet once I finish overhauling my programs Systems Hungarian will seem a lot less useful and I'll feel more comfortable agreeing with your point.
But in the meantime I might see something like prnI vrbFind sbjIt vrbMakes nCode adjHarder prTo vrbRead and think "Oh, this is breaking because I can't use two verbs in the same VBA sentence."
 
@puzzlepiece87 "breaking" and "used" are both verbs. ;-)
 
[rubberduck-vba/Rubberduck] build for commit 1dd9d64b on unknown branch: AppVeyor build succeeded
 
You'd also be surprised at what will compile and "run" in VBA due to the lack of strict type safety.
 
8:58 PM
@Comintern lol
Yup, lots of stuff involving Ranges compiles and "runs" if you aren't specific
 
9:28 PM
@Mat'sMug So rule of thumb: If a chunk of code can't fit on one screen time to refator?
 
@IvenBach That's the upper limit.
 
The question begs: What's the lower limit?
If it gets 'cutesy' it's too short?
 
I like it best when the body of a C# method is <=10 lines including whitespace.
@IvenBach One statement.
There is a reason one of the new C# 6 features is expression-bodied members:
int GetRandomNumber() => 4;    // ...
Instead of:
 
@Hosch250 <sarcasm>That applies to 10% zoom and not 100%, right</sarcasm> I got showed up by @Hosch250's answer...
 
int GetRandomNumber()
{
    return 4;
}
@IvenBach It doesn't matter what zoom--a line is still a line.
 
9:33 PM
If (whatever) Then Toggle_ErrorPrevention (intShapeNumber)
Am I doing something wrong with my call statement there, that it's putting a space between Toggle_ErrorPrevention and (intShapeNumber)?
I'm trying everything to fix that "The object invoked has disconnected from its clients" error
 
@IvenBach the lower limit depends on how much abstraction becomes too much abstraction. And then there's the balance between readability and performance: write code so that it's easy to read/maintain, and then optimize the performance bottlenecks. Inlining every function lowers the abstraction level and reduces (a tiny little bit of) overhead.
 
@Mat'sMug I'm still getting used to inlining what is that again? The example @Hosch250 gave? int GetRandomNumber() => 4;
 
@IvenBach That's C#, and it is an "expression-bodied member".
 
Inlining is a refactoring that's the exact opposite of extracting a method
 
9:40 PM
You can also use it with properties--just remove the parenthesis.
 
Extracting a method increases abstraction, inlining a method decreases it
Supper time, and then parent meeting at the kids' daycare - I'll be back later
> Total Downloads 10,304
 
@Comintern Unfortunately the error is still occurring, but that information is definitely good to know as I do more method extraction
Thank you!
 
> Rubberduck.Setup.2.0.13.0.exe (5.83 MiB) - Downloaded 155 times.
Last updated on 2017-03-12
 
@puzzlepiece87 Oh, that had nothing to do with the error - the link just explains why.
 
@Comintern Ah got it, I was hoping I was calling incorrectly and that was causing the error.
 
9:50 PM
@puzzlepiece87 From what I got the parentheses aren't needed and @Comintern provided the link with the why
 
well, much like Application.Run supports multiple syntax forms, it seems Ribbon callbacks do too (in fact I suspect Office is just calling Application.Run behind the scenes).
All of these are valid ways of specifying a callback handler that calls Bar:
Bar
Module1.Bar
myProject.Bar
myProject.Module1.Bar
RibbonSample.xlsm!Bar
RibbonSample.xlsm!Module1.Bar
RibbonSample.xlsm!myProject.Bar
RibbonSample.xlsm!myProject.Module1.Bar
 
@IvenBach Yup, after reading his link I took the parentheses out and understood the why behind that.
 
@ThunderFrame Oh wow, and ugh.
If you are going to qualify it, for pete's sake use the qualification properly.
3 and 7 are just plain evil.
 
> I noticed an issue with this inspection:

> Parameter 'myParameter' is passed ByVal and assigned a value

and this fix:

> Create and use local copy of the parameter

The fix dims a new local variable, makes it equal to the parameter, and replaces any references to that parameter with the new local variable. Great feature!

However, if the parameter is an object, for example a range, the fix does not use `Set`.

For example, applying this fix here:
```
Private Sub test(ByVal ta
 
@Hosch250 yep, 3 and 7, (and 1 and 5) fail if Bar is defined in more than one module.
and if Bar is defined in an add-in, but the activeWorkbook also has a procedure name Bar in Module1 and the project is also called VBAProject myProject, then the ribbon will call the ActiveWorkbook's declaration for 1,2,3 and 4.
but my point is, do I need to parse the callback delegate name? Is there a way to convert it into a QualifiedMemberName?
 
10:08 PM
@ThunderFrame Should be...
Can't you just new up a QualifiedMemberName?
 
@puzzlepiece87 It least we're learning. This spoonfeeding sure has been helpful to us both. #FeedMeMore
 
public QualifiedMemberName(QualifiedModuleName qualifiedModuleName, string memberName)
In order to determine the QMN and member name, I'd need to know the names of all open projects, and all modules in each of those projects
 
@IvenBach Milk, Gerber's baby food, bananas, or meat?
@ThunderFrame You've got that information after a parse.
Or really, if you want to re-read the stuff from the VBE, it's all there.
 
@Hosch250 Noob Programmers food please. The basics so I can build up from there.
 
From the looks of it, you are beginning to move to bananas.
You'll be on meat soon enough :)
 
10:13 PM
@Hosch250 I do research before asking in here, but yeah, I usually check if anyone knows a quick answer before I reach the headbang stage.
 
(Don't worry, sometimes I still need baby food too.)
 
I think one should go 'back to basics' to ensure one hasn't forgotten any core principles or ideas.
 
@ThunderFrame Can't we just create a Declaration type for it and give it special handling in the scope resolution?
 
@IvenBach Pretty soon, you won't feel like that.
Starting the Encapsulate Field WPF UI.
 
@Hosch250 yep - for Excel and Word, the Ribbon XML will normally be fixed at the time the file is opened (I think the only exception is a user customizing their Quick Access Toolbar for a workbook). And I can only read an Excel/Word customization as of the last save (so I can't read the QAT changes unless they're saved).
 
OK.
Anyone want to review my Developer Story? stackoverflow.com/users/story/2509848
 
In theory, I only need to read the XML after a save, rather than on every parse. But some hosts allow the ribbon XML to be set at runtime, or load from an Access table that can change at design or runtime. I guess I'll make the Ribbon callbacks a property of the project and cache as necessary
 
en.wikipedia.org/wiki/… made no sense to me. Ater reading the article @Mat'sMug referenced. 'Systems Hungarian' vs 'Apps Hungarian' and reviewing Advantages Disadvantages & Notable opinions it all clicked!
 
@Comintern Yep, it will need it's own declaration type, but RD will need to be able to resolve the callback syntax
 
10:22 PM
#ICanBeTaught!
 
@Hosch250 I've never used Developer Story - is there a way to order the time-line by date?
 
Not as far as I know.
 
Why is it so hard to learn how to learn the lingo just so you can understand what you're trying to learn.
 
@Hosch250 Wow. I wonder if anyone has requested that on Meta yet.
 
@Comintern Actually, it is sorted pretty well. It is sorted by end date, and then by shortest time period.
So, all the current stuff is on the top, and the stuff I've been doing shortest is on the top of the subsections.
 
10:25 PM
Huh. That seems like an odd sort. Most resumes order by start date.
 
I think it is to highlight the most recent stuff you've been doing.
 
Makes sense, I guess. BTW, it looks good - the OSS stuff is a really good hook when you don't have a lot of workplace experience.
 
> RD correctly identified the object variable mergeAreaTmp as being assigned without the 'Set' keyword in the procedure below, however this procedure compiles and runs without error and works as intended. The procedure unmerges all cells in the active workbook.

```
Public Sub UnMergeAll(Optional ByVal optionDataInAllCells As Boolean = False)
Dim cellTmp As Range
Dim mergeAreaTmp As Range
Dim varCell As Variant

For Each cellTmp In activesheet.usedRange
If cellT
 
I'm going to be doing more Roslyn stuff after I finish college.
I've got a few more analyzers and code fixes I can do, and some options to add as well.
 
10:31 PM
> Thanks for taking the time to report this - the underlying problem is a known issue. We're currently not taking the use of the default member of object variable into account for that inspection (see #2602). Note that this should probably be triggering a different inspection, something along the lines of "Implicit use of default member Value".
 
@IvenBach If you mean an inspection, no. There is an open feature request though.
 
You guys are on top of things.
2
 
00:00 - 23:0023:00 - 00:00

« first day (1013 days earlier)      last day (2167 days later) »