« first day (2782 days earlier)      last day (398 days later) » 

12:00 AM
REFRESH!
[Minesweeper] 101 Games Played. 58 Bombs Used. 14024 Moves Performed. 11 New Users
[rubberduck-vba/Rubberduck] 1 issues opened. 1 issue comments
[Zomis/Games] 76 additions. 34 deletions. 2 commits
 
 
2 hours later…
 
6 hours later…
8:04 AM
> The fact is that in range(sheet2.cells(1,2), sheet2.cells(1,2)), range implicitly reference to sheet2 instead than (the whatever) 'ActiveSheet' as Code Inspector wrongly says.

To see that, try these combinations in the immediate window or in a module while keeping sheet1 active:
activesheet.range(sheet2.cells(1,2), sheet2.cells(1,2)) = "abc" ' -> error 1004
range(sheet2.cells(1,2), sheet2.cells(1,2)) = "abc" ' -> writes "abc" in cell "B1" of sheet2
sheet2.range(sheet2.cells(1,2), she
> The fact is that in range(sheet2.cells(1,2), sheet2.cells(1,2)), range implicitly reference to sheet2 instead than (the whatever) 'ActiveSheet' as Code Inspector says.

To see that, try these combinations in the immediate window or in a module while keeping sheet1 active:
activesheet.range(sheet2.cells(1,2), sheet2.cells(1,2)) = "abc" ' -> error 1004
range(sheet2.cells(1,2), sheet2.cells(1,2)) = "abc" ' -> writes "abc" in cell "B1" of sheet2
sheet2.range(sheet2.cells(1,2), sheet2.cell
> The fact is that in range(sheet2.cells(1,2), sheet2.cells(1,2)), range implicitly reference to sheet2 instead than (the whatever) 'ActiveSheet' as Code Inspector says.

To see that, try these combinations in the **immediate window** or in a **module** while **keeping sheet1 active**:
**activesheet.range**(sheet2.cells(1,2), sheet2.cells(1,2)) = "abc" ' -> **error 1004**
**range**(sheet2.cells(1,2), sheet2.cells(1,2)) = "abc" ' -> writes "abc" in cell "B1" of **sheet2**
**sheet2.range*
 
 
1 hour later…
9:17 AM
> Sub Increment(ByRef l as Long)
l = l + 1
End Sub

Usage:

Increment account

Is flagged as "can be written as a function". Not sure this is really any better:

Function Increment(ByVal l as Long) as Long
Increment = l + 1
End Function

Usage:

account = Increment(account)
> Considering that this doesn't actually exhibit any unintended behavior, I don't think this issue is actionable. As such I am closing it :)
> The fact is that in `range(sheet2.cells(1,2), sheet2.cells(1,2))`, `range` implicitly reference to `sheet2` instead of (the whatever) `ActiveSheet` as Code Inspector says.

To see that, try these combinations in the **immediate window** or in a **module** while **keeping sheet1 active**:
```
activesheet.range(sheet2.cells(1,2), sheet2.cells(1,2)) = "abc" ' -> **error 1004**
range(sheet2.cells(1,2), sheet2.cells(1,2)) = "abc" ' -> writes "abc" in cell "B1" of **sheet2**
sheet2.range(s
 
 
3 hours later…
12:52 PM
> A shorter form referring to a single cell would be `wks.Cells(1, 2)` though.

The problem with the implicit inferred-from-inner-calls form, is that it works until it doesn't. Lookup error 1004 on Stack Overflow, you'll see just how frequently it trips people over. Code that does one thing written here but does something else written identically over there, is exactly what Rubberduck is warning about. Agreed that the target should probably not be hard-coded, but "implicit Active sheet reference
 
 
1 hour later…
1:52 PM
> Ok I didn't know that if I put my range(wks.cells,wks.cells) expression in a document (sheet) module, the implicit reference to Me **prevails** on that inferred-from_inner_calls.
This is sufficient for me to give up on this.
 
2:06 PM
> **Rubberduck version information**
The info below can be copy-paste-completed from the first lines of Rubberduck's log or the About box:

Rubberduck version [...]
Operating System: [Windows 11 Pro]
Host Product: [Excel 365]
Host Version: [2112 16.0.14729.20254 64bit]


**Description**
Whole project has been working as I excepted. I had used Intender and after that whole excel's file with vba program is crashing and cant event save it. In right bottom corrner is still
> I think that's fair.

I dumped  RD into a large existing project. And 40 hours in I'm still finding it overwhelming.  You might consider offering a "minimal existing project" set to enable at first. But that's a different request.


-----Burton


On Jan 17, 2022, 3:18 AM, at 3:18 AM, Clemens Lieb ***@***.***> wrote:
>Considering that this doesn't actually exhibit any unintended behavior,
>I don't think this issue is actionable. As such I am closing it :)
>
>--
>Reply to this email directly o
 
 
2 hours later…
3:43 PM
Refactoring a module with 5600 lines can be a bit scary - there's 2-3 seconds where module is empty while the rewriter reconstructs the module.
I also had to give up on the encapsulate field refactoring - it was sooo glacial just to navigate the huge list of fields to be encapsulated.
 
Wow...is it the only module in the project?
 
wow indeed! I thought my code was pretty bad...
 
No, unfortunately, there are others, so it's adding to the work, obviously.
I can understand why - they want to keep it 100% self-contained so it'd just be "drop this module in and voila!"
but gee, not fun to make changes inside.
 
4:02 PM
Dropping in a 5600 line module has to make an audible sound.
2
 
lol
If I ever have time I may need to refactor it into a twinBASIC project. Then things will be organized far more sensibly and there'll be just one DLL with one public interface.
 
sigh ... spotbugs is ... weird: github.com/spotbugs/spotbugs/issues/1925
@BZngr depends on your machine... some won't care, some will have to spin up the fan :D
 
:)
 
> @kaszysz did you intend to close this issue? If yes, did the problem resolve itself?
 
Or did he indent to close the intender issue?
 
4:17 PM
must be the best hidden feature of RD. I did not even know it even had an intender.
 
LOL
 
@Duga how is Excel's "calculating" state even related in any way with the VBA project??
 
4:52 PM
@MathieuGuindon wouldn't it be a case of having a formula calling a vBA function?
 
5:18 PM
Isn't the indenter one of the first things RD ever did?
 
5:32 PM
almost, yeah.
 
we had our own indenter before we got the smartindenter stuff??
 
Actually "calculate" status is an indicator of pending recalc, most likely due to calculation mode being set to manual - something RD couldn't do if it tried
@Vogel612 no but we got the VB6 source in 2015 IIRC =)
 
More importantly, when did RD got its intender?!? Why didn't I know about that?
 
Yeah, if I knew RD had an intender, I'd run it on all my code to get it to do what I intended, not what I wrote.
4
 
5:38 PM
> Can you confirm Excel's calculation mode is automatic? Rubberduck does not interact with Excel itself, or any other host application... We're going to need more detailed repro steps to replicate this issue.
 
 
2 hours later…
7:34 PM
 
8:21 PM
 
 
3 hours later…
11:45 PM
[rubberduck-vba/Rubberduck] 1498 stars vs. [decalage2/oletools] 1886 stars
 

« first day (2782 days earlier)      last day (398 days later) »