[HN Gopher] Show HN: I've built a C# IDE, Runtime, and AppStore ... ___________________________________________________________________ Show HN: I've built a C# IDE, Runtime, and AppStore inside Excel The project is called QueryStorm. It uses Roslyn to offer C# (and VB.NET) support in Excel, as an alternative to VBA. I've posted about it before, but a lot has changed since then so figured I'd share an update. The current version includes a host of new features, namely a C# debugger, support for NuGet packages, and the ability to publish Excel extensions to an "AppStore" (which is essentially a NuGet repository). The AppStore can be used by anyone with the (free) runtime component. Another great addition is the community license, which is a free license for individuals and small companies to use. It unlocks most features, but it isn't intended for companies with more than 5 employees or over $1M in annual revenue. I would love to hear your feedback and am happy to answer any technical questions about how QueryStorm is implemented. Author : anakic Score : 574 points Date : 2023-01-25 09:39 UTC (13 hours ago) (HTM) web link (querystorm.com) (TXT) w3m dump (querystorm.com) | nielsbosma wrote: | Love it! Big fan of developer productivity tool like Linqpad. | major505 wrote: | Now I can use excel. I always sucked doing stuff in excell | formulas. With this now I can just linq and spit the info I need. | viggity wrote: | devs "hate" excel because you have to reference by col/row (C10 | = tax rate, etc). But few devs know that you can name cells | (and ranges and tables). Just to the left of the formula bar | you'll see a textbox with the default name of the cell (C10). | Just delete C10 and call it "tax_rate" and now you can | reference "tax_rate" in all your formulas. | TrackerFF wrote: | Now sure how known this is, but Excel 365 for Business / | Enterprise supports Office Scripts (under a "Automate" tab), | where you can create scripts in TypeScript. | | https://learn.microsoft.com/en-us/office/dev/scripts/overvie... | | https://learn.microsoft.com/en-us/office/dev/scripts/develop... | barrenko wrote: | This is pretty mad. | rukuu001 wrote: | I remember you back when it was just an SQL plug-in for Excel :) | | Congrats on building this and sticking with it so long. It's | awesome! | gwbas1c wrote: | I tried clicking on the animation to make it bigger, but the | larger image doesn't load. | | I'm using the Brave browser. | layer8 wrote: | Same on FireFox. | anakic wrote: | Yeah, I just checked and it fails on some gifs for me as well | (but works on others for some reason). I'll leave it as is | for now, best not fiddle with it while this post is trending. | chinupbuttercup wrote: | Would this work with Excel for the Mac as well or is primarily a | Windows thing? Somehow, while good, I feel like Excel for Mac | just isn't as good as Excel for Windows. | anakic wrote: | Unfortunately, no. Excel for Mac doesn't support either of the | two technologies QueryStorm uses to talk to Excel (namely VSTO | and ExcelDNA). | | Might be possible to build something that would work across all | plaforms using Blazor and the Monaco editor, but that would be | another huge project. | major505 wrote: | this is.... awesome. | RektBoy wrote: | If the user can code in C#, why they need Excel? Exporting to | Excel for other non-coder employees, sure why not. | | I don't understand the use-case, Excel is horrible tool for | anything else than stupid, a few hundred rows data science. | eatsyourtacos wrote: | You must not work with any kind of real world data if you think | Excel is a horrible tool. | | Pulling in 1000000000 rows of data you know absolutely nothing | about to throw into your ML model and have it spit out some | questionable result doesn't mean you actually work with real | world data. | | >a few hundred rows data science. | | People that work with a few hundred rows are called "almost | every office employee ever" and not data scientists. And you | are naive as hell if don't realize how powerful excel is for | every random ass thing that happens in the real world. | jbb_hn wrote: | Wow. As someone that has written a fair amount of VBA in the | past, this is a game changer. | | Impressive feat of integration and I hope you're rewarded for all | your efforts. | | Clearly a passion project! | kinggencha wrote: | Animations embedded within text are distracting and make the | reading experience worse | anakic wrote: | I like that a gifs shows so much in very little space, but I | take your point about it being distracting. Regular mp4 videos | you can play/pause explicitly might be a better option for the | future. | keithalewis wrote: | Does this use https://excel-dna.net/ behind the scenes? | anakic wrote: | Yeah, the runtime component is an ExcelDNA addin. The IDE | component is a VSTO addin. Since VSTO doesn't allow defining | custom functions I switched to using ExcelDNA for the runtime. | andysinclair wrote: | What did you use to write the installer, and how do you | determine if the targeted version of Excel is 32 or 64 bit? | | I've built an Excel-DNA based Add-in | (https://www.excelpricefeed.com/) and distribute it via an | installer built using Advanced Installer. It works well, the | only real pain point is the the user has to find out which | version of Excel they have installed in order to choose the | correct download (32 or 64 bit). | keithalewis wrote: | See https://github.com/xlladdins/xlladdin/blob/master/ThisA | ddIn.... | anakic wrote: | I use Wix for the installer. Can't remember how I dealt | with that particular issue, but ping me at antonio [at] | querystorm.com in a day or two, if you're interested, and | I'll have a look at how exactly I dealt with it. | keithalewis wrote: | Please consider acknowledging that on your website. | anakic wrote: | I would love to but I'm a bit scared to fiddle with the | post now while it's trending. I think it's mentioned in a | few places on the website, but not in this blog post. I do | also use a bunch of other libraries, but yeah, ExcelDNA is | one of the critical ones so mentioning it would be in | order. | HeckFeck wrote: | Very cool. Should be a part of Excel tbh. LINQ is much better | suited for data munging than JavaScript. | qwerty456127 wrote: | F# is even better. | eitland wrote: | Maybe, but I think C# has the advantage that "everyone" knows | it or Java so it is trivial to get started. | | Last I checked, admittedly a couple of years ago, starting | with F# wasn't absolutely trivial. | eckza wrote: | It is, if you know where to look. | | Therein lies the problem. The language doesn't have much | marketshare, and few champions. | | I just finished reading Scott Wlaschin's Domain Driven | Design for Functional Programmers and it's an incredible, | batteries-included guide that goes from "hello world" to | "and here's how you use it in an organization" in a few | hundred pages. | | I wish I had been exposed to it about a decade ago. | Incredibly easy to follow and well-explained. | fsloth wrote: | This! Other good books are "Expert F#" by Granicz, Syme & | Cisternino, "Real world functional programming" by | Petricek and "F# for scientists" by Harrop. The last is | old but still really great in succintly explaining what | 'new&unfamiliar' structures in F# are great for pragmatic | software engineering. | | Why is there so little noise in F# land? I have no data, | but I can guess that the language is so unproblematic | that everybody is just happily coding instead of | explaining how to fix something. It's also not very good | at guis so there is usually nothing visual to | demonstrate. | grugagag wrote: | What's the markershare though? F# is great but Microsoft | made it sortof a second class citizen | fsloth wrote: | F# is installed by default with Visual Studio, and the | tooling is pretty good. I think it hardly is second class | citizen? Not promoted nearly as much as C# for sure. | | AFAIK F# is on quite solid foundation, as there is the F# | foundation that would keep ball rolling, so to speak, | were Microsoft to renounce the language. | | I have no idea what the marketshare is though. On Tiobe | (https://www.tiobe.com/tiobe-index) it seems to be nearly | on par wit Scala and much more popular than Haskell or | Ocaml. | pjmlp wrote: | Pretty good if only what one cares about is CLI and class | libraries. | | According to JetBrains developer survey, an amazing 3%. | | https://www.jetbrains.com/lp/devecosystem-2022/csharp/ | eckza wrote: | I think that the problem is that: | | - fsharp's big selling point is that it runs on dotnet - | most FP ideologues run screaming from M$, and there are | other, better (subjectively), more-active FP langs that | do many of the same things, such as OCaml and Haskell - | most dotnet shops are "csharp or die" and getting fsharp | adoption is more or less an impossible task for cultural | reasons | | I support fsharp and generally like it, but I'm not | reaching for it for net-new stuff that doesn't already | have a dependency on dotnet. $0.02. | pjmlp wrote: | For that you already have PowerQuery on Excel. | | As for being better, F# is better on the language level, but | sadly sucks on the tooling effort for .NET frameworks, that | Microsoft is willing to spend on it. | brushfoot wrote: | This is excellent. I can see buying it for my business. We | already use Excel extensively for the open file format; that it's | local first; that it's just a file; the low ceremony of getting | started; the multipurpose grid for code, data, and presentation; | the ubiquity. | | The more low-code/no-code SaaS products I've tried, the more I | value it. LC/NC SaaS generally is expensive and inflexible. | Everybody knows Excel, it's dirt cheap, and it just works. It's | part of a certain IT subculture to bash it, but I stopped | laughing along. | | Excel is great at what it does. Love seeing clean solutions like | this that give it even more muscle. | beached_whale wrote: | I love how approachable it is. Domain experts in other fields | are able to program in excel and codify their knowledge. While, | not always great in terms of code quality, often it is bad, it | still provides a great starting point in moving to something | more resilient and safer in terms of data validation. | | There is a reason it is the worlds most poplar programming | language | redavni wrote: | "most poplar programming language" | | In your opineion. | anakic wrote: | Hope you give it a go. I'd love to know how you get on with it | if you do! | actionfromafar wrote: | Find a way to connect this to Zapier and the Universe might open | up a wormhole. | mcdonje wrote: | Really cool. I could see MS jumping on this because of their | strong association with C#. | | That said, I think the ideal replacement for VB & VBA in most | contexts is python. The reason is they're both high level | languages with ease of learning as a selling point. Python has a | massive userbase, and there is significant overlap of python and | MS Office tools. Data analysts who have to deal with Excel & SQL | Server are much more likely to know python than any other | language outside of SQL. | | It seems like python has pretty much locked up the spaces that VB | was designed for. | kab0b wrote: | I thought I remember hearing like 4 or 5 years ago that MS was | planning on replacing VBA with Python Support in Office apps. | But I can't find anything to back that up, so maybe I just had | a really wishful dream. | mcdonje wrote: | They might have some involvement in python libraries or | tooling to interact with excel files from python apps, but | the default programming support within excel is still VBA. | They did add a javascript API, but getting that up and | running is a job geared more for a dev than a data analyst. | | What I think they should do is not just make a python API, | but replace VBA with it, and expose it to end users where VBA | is currently exposed. Python should be the language of macros | and user defined functions. | kevin_thibedeau wrote: | They should dust off Windows Scripting Host and use that as | the nexus for Office app scripting. | cobrabyte wrote: | This is excellent. Great work! | anton_ai wrote: | Installed :) | T3RMINATED wrote: | [dead] | ycuser2 wrote: | I would have used the hell out of it 8 years ago! VBA IDE was a | pain. | | Great work! | waldrews wrote: | Spectacular. Stats PhD here, I've needed this for years for | practical projects in different data science roles. I'd love to | talk to you about adding statistics/forecasting capabilities, | maybe by exposing some existing libraries with syntactic sugar. | gadders wrote: | Good work, but this is depressing: | | "VBA is a bit (a lot) behind the times and Microsoft isn't | planning on upgrading it. Instead, they're offering a sandboxed | JavaScript environment called Office Scripts." | | Microsoft - Just swap VBA for Python ffs. | qiqitori wrote: | There's a lot of people who only know VBA (in terms of | programming languages), and there's a huge amount of VBA code | in production out there. Microsoft won't make itself popular by | replacing VBA for some silly technical reason, especially not | because the syntax is perceived to look better. It's a bit like | renaming the SUM function to ADD and expecting everyone to | rewrite their formulas. | orbit7 wrote: | Impressive, Excel would benefit having this built in | [deleted] | denismurphy wrote: | Hats off @anakic this is class! It would be a game-changer if | Microsoft licensed QueryStorm built in to Excel. Let's hope the | right people at Microsoft are paying attention to you. | anakic wrote: | Thanks! Wouldn't mind that outcome one bit. It's hard to get | exposure and adoption for a platform like this without some | serious muscle backing it. I suspect Microsoft has its sights | set on the cloud, though, but still, it would be amazing if | they adopted QueryStorm. | samstave wrote: | Beautiful. | | So can people upload their code snips to the appstore such that, | say, a marketing data analytics person with no coding experience | can pay to get 'buttons' to run queries that are relevant to | their needs? | | like the salaries example, for example, I used to spend a shit- | ton of time educating a CFO on AWS spends in excel. | | If I could have a code snip 'button' to use some AWS-CLI creds to | pull results directly from AWS asa "CFO BUTTON" and set them up | with an easy export to an XLS - and then let them build their own | dash to their choice that would be cool. | | I havent looked at Cloudability in quite a while, (know the | founder) -- but giving a CFO-type an excel button... Every CFO | can navigate excel. so they get an invisible tool that empowers | them, and relieves stress on the Ops team... | anakic wrote: | Yep, that's the idea. | | You create a project that defines some custom functions, ribbon | commands, context menus, shortcuts etc... and then publish it | to a store. Then anyone who has the QueryStorm Runtime (and the | url of the store you published to) can install it through the | "Extensions" dialog. | | I haven't yet set up the ability to charge for packages but I | plan on offering this. I first need a community of users, so | didn't focus on charging yet. | | If you'd like some help setting up something like that AWS | scenario, reach me via email: antonio [at] querystorm.com, I've | done several such integrations already (Google analytics, | Monday.com, TSheets, Google drive). | ragebol wrote: | No questions, just complimenting on what looks like a great, very | very useful product. | anakic wrote: | Many thanks! | cm2187 wrote: | Microsoft actually built that already, then they decided to kill | it. It was called VSTA (not to be confused with VSTO). It shipped | with one of the apps of Office 2007. | anakic wrote: | At first I thought you were referring to VSTO, then I saw the | "not to be confused with VSTO" part. I had no idea this ever | existed. Thanks for mentioning it. I wonder why they decided to | pull the plug back then. | kleiba wrote: | Funnily, QueryStorm uses VSTO behind the scenes: the IDE | component is a VSTO addin. | cm2187 wrote: | I suspect it must have been part of "let's try to secure / | lockdown office", "users writing codes is bad, they should | only push buttons", and at the same time they tried to make | it as hard as possible to use VBA (all sorts of warnings and | things disabled by default, etc) | | I am also aware of a commercial product that offers a .net | IDE to be embeded into your software, though I never tried | it: https://www.alternetsoft.com/products/scripter | ChicagoDave wrote: | Linq in Excel is very interesting. | 813919 wrote: | This is incredible. I work in industrial automation and I often | have to manage / make edits to "point assignment charts" which | are essentially Excel Workbooks with 100+ Worksheets, each | containing ~10-100 rows of formatted data which define various | parameters each real world "point" should have in order to | communicate with RTUs / various SCADA nodes. | | Sometimes the feedback involves making a minor tweak on every | Worksheet. Sure you can muck around with VBA (which is a horrible | language and experience), but I often just do it manually to get | it over with instead (click click click... very tedious). | | C# is my go-to "business logic" language as a developer, and this | looks so well integrated, really excited to use it. | anakic wrote: | Would love to know how you get on with it. If you'd care to | share, please to let me know. | 813919 wrote: | Sure! I'll make a reminder to follow up a week from now on my | UX. Thanks :) | jodrellblank wrote: | > " _Sometimes the feedback involves making a minor tweak on | every Worksheet._ " | | Could be a good task for PowerShell and the ImportExcel | module[1]. | | (PowerShell also being a .NET language and written in C#; it | has convenient access to COM control of Excel if you can't | import the spreadsheet and export an updated version; through | $xl = New-Object -ComObject Excel.Application ) | | [1] https://github.com/dfinke/ImportExcel | kevin_thibedeau wrote: | You have inherited a crappy database. Export it via ODBC and | use more powerful tools. | 813919 wrote: | No not really, it's many projects with many documents, shared | among many contractors. You use Excel Workbooks when you work | in fields like this. We have it formatted to be pretty too, | so we can just publish to PDF via Adobe Acrobat when it's | time to send in submittals. | drorco wrote: | This looks great! In my previous company, we somehow ended up | building a whole ERP around Google Sheets. Google Sheets is a | very powerful tool, but the JavaScript definitely felt clunky and | outdated. | | A solid C# foundation for building on top of excel could probably | be very useful for some companies. | | I do wonder though how you can nail down a target audience for | this kind of tool, seems like you'd need a special kind of | tinkerer and I'm not sure how many like that are out there. In my | other company, which was a small company, the ones who headed it | were essentially engineers that transitioned to executive | positions. I doubt there are many like that out there. | nycdotnet wrote: | Looks awesome. One fundamental issue I always faced with Excel | calculations of any kind (formulas or vba) is the lack of ability | to source control cleanly (binary format plus data and code are | intermingled). This weakness is the other side of the | spreadsheet's greatest strength which is low friction | experimentation with data. Does this product attempt to do | anything here? | anakic wrote: | Thanks! | | You can version control the code you write with QueryStorm, to | an extent. There are basically two kinds of apps you can build | with this: extension apps (where you build general excel | functionality) and workbook apps (where you automate a | particular workbook). | | The code for extension apps is stored in a folder on your | machine, and you can version control that easily. | | The code for workbook apps is stored inside workbooks. While | there's no version control functionality in QueryStorm, it does | let you export code from a workbook into a folder, as well as | import code from a folder into a workbook project. There are | context menu commands for this in the code explorer pane. This | lets you decouple the code from the workbook. | | Basically, for version controlling code in a workbook, you'd | have to export the code into a folder and version control it | there. Exporting into a folder will clear everything from the | folder except hidden stuff like the ".git" folder so your git | repository will be safe. Not a perfect solution, but it can be | done. | cxr wrote: | Since XLSX etc. use Microsoft's Open Packaging Convention (a | ZIP container consisting of mostly plain text), consider | adding native support for unpacking and normalizing the | payloads so they can be trivially diffed by existing source | control systems. | anakic wrote: | It's something to consider, for sure. Perhaps there's an | easy win to be had there. | whitemary wrote: | Can you also import it from the folder? | anakic wrote: | Yeah, you can import the folder back into the project and | it will replace all of the existing files with the ones | from the folder. | unnah wrote: | Have you considered implementing a project folder structure, | so that the workbook and the source code could be version | controlled together in git, but the IDE would import and | export the source automatically from/to the workbook? | anakic wrote: | You mean add the workbook itself into the folder as binary | file to include in source control? I haven't, but it might | make sense, to keep the workbook in sync with the source | code. | samsquire wrote: | This is absolutely awesome. | | The combination of a spreadsheet, database and data scripting | runtime would be extremely powerful. | | This is where Airtable, nocodb and baserow are candidates. | | I worked at a company that used gridgain with Excel as a cluster | to process models on lots of servers. | | I suspect there's a lot of low level Windows integration details | about how to integrate with Excel. COM objects and DLLs. | | Why is integrating with software so difficult? Very few people | know how to do it. | | How you design software that is extensible? | | Atom was extensible and VS Code is less so. | | Why has nobody integrated the web browser with QT? So we can | browse into a Qt application. So you can create desktop widgets | and canvases with Qt from Javascript? That way you could ship | desktop software and arbitrary integrations to software. | TeMPOraL wrote: | > _Why is integrating with software so difficult? Very few | people know how to do it._ | | I feel it's because of inherent conflict of interests and | priorities. A software product can provide services to the | user, or provide services to other programs. It's rare to see | one that does both, because the two goals seem often at odds. | | Say you're writing a software component for other programs to | use. You probably have some specific programs in mind, some of | which are end-user-facing. In this case, you may not want to | spend resources on developing user-facing UI and features that | make your product usable stand-alone - you'd likely end up | competing with your own customers. | | Say you're writing user-facing software instead. You want to | own the entire user experience. Mixing UI, user interaction and | the "business problem"-solving code together lets you work | faster. Also, you don't _want_ to make it easy for anyone to | integrate with the core of your software, because that would be | inviting competitors to own the user experience while using | your own backend, ruining all kinds of marketing shenanigans | you 'd rather play on your users. | | I don't like this, but I see there's a mix of both reasonable | and greedy reasons why software isn't developed with | integration in mind. | | The major exception here is when the platform on which the | software runs encourages, insists on, or demands the software | to allow for integration. Windows does that to an extent with | COM / DCOM. Emacs does that by its nature. But it's only moving | the problem one level up - e.g. Microsoft environment can't | integrate well with Apple environment. | brendank310 wrote: | OT: You can do that with Qt. We played with implementing it | ourselves for a project about 10 years ago. Since then I think | there is an official QPA that will render Qt apps within the | browser, and there is the Wt project. Might be worth looking at | for some needs but I don't see it becoming popular. | inglor wrote: | I work on Excel at Microsoft and this is really cool. I'll check | it out and share it with the rest of the R&D. | anakic wrote: | Thanks, that's great!! <3 | keithalewis wrote: | Please tell Satya to show the ancient C SDK a little love. I'd | hate to see this disappear: | https://github.com/xlladdins/xll#fp-data-type | andysinclair wrote: | Do you know if this item from the Microsoft 365 roadmap would | stop Add-ins (xll files) like this from working? | | https://www.microsoft.com/en-us/microsoft-365/roadmap?filter... | | I also have a vested interest as one of my software products is | an xll Add-in. Any further details from Microsoft would be most | welcome, thanks. | inglor wrote: | Open us a feedback through the app. We actually read every | tiny bit. | Tempest1981 wrote: | Cool. How can I turn off the animated cursor movement in | Excel? And Outlook? Drives me crazy. I keep submitting | feedback. Even a registry hack is fine. | anakic wrote: | No idea, haven't seen this until now. Hopefully they provide | a mechanism for allowing legitimate addins to get around it. | Perhaps using a code signing cert (which I do) or an EV | certificate would be appropriate. Security has been a bit of | nightmare with Excel addins. I've had to deal with false | positives on and off again a bunch of times already. First it | was windows smart screen, then antivirus vendors every so | often. It's a slog... | tech234a wrote: | Typically you can go into the file properties and check the | "Unblock" checkbox to remove what Microsoft calls the "Mark | of the Web". | gadders wrote: | Jan 2024 - Microsoft releases Excel with it's own built-in C# | IDE, doesn't credit original developer. | IshKebab wrote: | Honestly it's annoying that they haven't already done that. I | was surprised a few years ago when I checked and it didn't | exist. | giancarlostoro wrote: | They might be likely to offer him a job there honestly. The | architect of C# was poached from Borland after all. | pjmlp wrote: | No he wasn't, he left Borland after being disappointed how | things were going. | | He declined several approaches from ex-Borland people | working at Microsoft, before reaching that point. | | https://behindthetech.libsynpro.com/001-anders-hejlsberg- | a-c... | giancarlostoro wrote: | Interesting, the story I've heard from various Senior | Engineers is that Microsoft poached him by offering him a | ton of money. Crazy to think they all repeated a tech | urban legend I guess | addandsubtract wrote: | How'd that go for the AppGet dev? | VWWHFSfQ wrote: | I always felt that there was more to that story than what | was reported. My understanding is they reached out to him | to interview for a PM role to develop an official | "AppGet" at Microsoft but, for whatever reason, he didn't | get the job. Maybe the interviews didn't go well? Maybe | there were some red flags somewhere? Who knows. But it | didn't really sound to me like they acted in bad faith. | giancarlostoro wrote: | Not familiar with this story. | xbar wrote: | Nor was I. It's worth a search and read. | gadders wrote: | I hope it does work out for the original author and he | deserves it but there have been cases before where concepts | have been taken from their originator and implemented by | the large corporate with no cash or even credit given. | xbar wrote: | Maybe this was a better initial comment. | IncRnd wrote: | Even today, it isn't Embrace, Extend, Employ. | inglor wrote: | Oh boy you don't know what our culture looks like. It's more | "it's cool that people are building on top of it and we want | to figure out how we can make it easier" | iforgotpassword wrote: | People didn't forget this story: | https://www.theverge.com/2020/5/28/21272964/microsoft- | winget... | inglor wrote: | Oh Microsoft the company is not to be trusted and is not | your friend. It's a huge company with many employees and | products. Moreover I can't attest to any other group's | culture - I can only say what we do in Excel. | | In Excel working hard to make addons possible and trying | to foster an ecosystem of users sharing expertise is a | focus as well as community building and smbs. | | Taking a cool community project and doing it ourselves | would shooting our selves in the foot. | | More than once I didn't do things or work in features for | that reason. | | Again not because Microsoft is your friend but because | it's in our business interest. | | I don't speak for Microsoft or Excel and am just a | developer/hacker ;) | pyth0 wrote: | I got this impression as well. I worked on a team two | years back building out a very complex Excel plugin using | Excel.js. The SDK has quite a few quirks and we ran into | some problems along the way, but the team at Microsoft | responsible for it was happy to help and interested in | hearing feedback and features we wanted. A positive | experience :) | mst wrote: | I always got the feeling that because it's such a key | product the Excel team was basically its own organisation | within the wider corporation and as a result had a lot | more freedom to make its own choices. | | (not that I'm arguing for trust that would, as you say, | be misplaced, but if my feeling is correct then the Excel | org's englightened self interest can diverge from the | mothership's self interest more than other divisions can, | which makes the calculations as to what your management | is likely to decide notably different) | pjmlp wrote: | Traditionally Microsoft has had three big feuds. | | Apps (where Office belongs), DevDiv (VS, .NET and such), | WinDev (Windows, C, C++). | | All of them used to compete quite a lot among themselves. | | No idea how it looks like nowadays with all the business | units, but I get a feeling that WinDev vs DevDiv is still | a thing. | kungfufrog wrote: | Will this only work on Excel running on Windows 10/11 X64? | anakic wrote: | It works on Excel 2013 onwards but only on Windows. Both x86 | and x64 are supported. Mac isn't supported I'm afraid. | kungfufrog wrote: | Show stopper for me, but can I just say what a fantastic | product and the article introducing it kept me hooked to the | end! | anakic wrote: | I have to do my own marketing, so I'm trying to blog more | often these days. Really glad to hear you enjoyed the | writing! | throwaway90650 wrote: | Is there a technical blocker on macOS Excel side that | prevents you from implementing it, or is it just a matter of | priorities? | anakic wrote: | A bit of both. On the Windows side I can use VSTO or | ExcelDNA to integrate with Excel, but neither is available | on the Mac. One alternative I'd like to try is a web-based | version which would use Blazor and the Monaco editor but | I'm really not sure if that would be at all doable. I don't | have the time to go there at the moment, but I'd love to | try at some point. | replwoacause wrote: | This is such an impressive feat of engineering. Excellent job. I | have no doubt this will be a hit. It wouldn't surprise me if MSFT | just decided to make you an offer for it. | andysinclair wrote: | Looks great, will give it a try (as a fellow Excel developer). | | One small point: on your webpage the "Try QueryStorm out" button | on the "Start a free trial" panel just points to: | https://querystorm.com/csharp-in-excel/ rather than the generate | key page. | anakic wrote: | Thanks, good catch! | charles_f wrote: | Looks awesome, and my favorite thing is this: | | > $379 License + 1yr support | | Cheers to you for not collecting a recurring fee for a desktop | app! | capableweb wrote: | The license is for 1 year of latest versions of the | application, after that you'll stop receiving updates. This is | pretty common for desktop applications, compared to SaaS. | charles_f wrote: | It's becoming less and less common, even for desktop | applications - which is why I thought this warranted some | congratulations | anigbrowl wrote: | A fine example of what caffeine has done to our great nation's | youth. What could have been an obscure command-line interface | enjoying a modest but dignified place in the field of traditional | operating systems is instead condemned to the gridded prison of | automated balance sheets under the beady eyes of our financial | overlords. | | Jokes aside, this is an amazing achievement, the more so for | being realized by a single person working away patiently for | years - truly inspiring. And it brought out a wave of nostalgia | for a former life where I made a living building bespoke tools in | the (pre-VBA) Excel macro language. All that and solid business | sense too! I hope companies shower Antonio with money, and that | Microsoft either leaves him alone or rewards him with gold and | the autonomy to lead technical product development for the long | term. It's rare to see such a singular combination of vision and | execution, doubly so in a very mature product space belonging to | a global megacorporation. | charlieflowers wrote: | Looks great, but I ran into an issue I'm hoping you can help | with. I copy/pasted the very first example from the blog and it | doesn't compile. I also have been unable to find the | documentation necessary to get past the problem. | | It's the example that reads the files in a dir and makes an Excel | table, and it fails on line 16, which reads `(excel.Selection as | Range).WriteTable(files, "myNewTable");`. | | The error is `Argument 2: cannot convert from | 'System.Collections.Generic.IEnumerable<<anonymous type: string | File, long Size>>' to 'QueryStorm.Data.ITabular' | ` | | I can't find docs for WriteTable() [even after finding those | gitlab repos that contain QueryStorm docs]. | | I think anyone trying to run with this, will need access to docs | on the API. | anakic wrote: | Thanks for trying it and replying back here. | | It looks like I was using a pre-release version of QueryStorm | while I was writing the blog post. I just released that version | so if you restart Excel you should get an "Update available" | button in the QueryStorm ribbon in Excel. | | Could you update and post back if that fixed the problem? | | Another way of "fixing" it would be to replace the following | line: (excel.Selection as | Range).WriteTable(files, "myNewTable"); | | with this line: Write(files, "myNewTable"); | | The Write method is available globally (it's not a method that | belongs to a class). This is a trick specific to C# scripts | (would be illegal in regular C#). | | The documentation does lack detail in some areas, which I | basically cover by answering questions via email. I do need to | invest time every so often to update and extend it. | charlieflowers wrote: | The update fixed it. Thanks! Look forward to giving it a | spin. | petepete wrote: | Hey Anakic, I remember posting a link to ThingieQuery here many | years ago (2016 maybe?). Glad to see it's gone from strength to | strength! | anakic wrote: | Yeah, ThingieQuerie it was called back then:) Thanks, I | appreciate the kind words! | ozim wrote: | Don't show it to my boss, please. | | It is super cool and would love to play around with it - just not | at work :) | ckluis wrote: | I clicked on resellers & affiliates because I was curious about | your terms. They are both empty. | anakic wrote: | Yeah, didn't get around to populating those yet. One-man show, | so things slip by... | | ComponentSource is currently the only reseller: | https://www.componentsource.com/product/querystorm-plugin | | Thanks for the heads up! | ckluis wrote: | Let me know if you want to chat about sales/marketing | linkedin.com/in/ckluis | paxcoder wrote: | [dead] | OJFord wrote: | _Oh_ a plug-in, ha, for some reason I read the title and thought | this was a 'just to show I can' type implementation of all those | things actually _in_ Excel, 'Doom in Excel' sort of thing. | | This seems far more useful! | whoisthemachine wrote: | I also thought this was going to be an article about | implementing a C# compiler in excel! This on the other hand | seems like a very neat product. | anakic wrote: | Thanks! Yeah, I probably should have made the title "...in | Excel" instead of "...inside Excel". I wonder if more or | fewer people would have clicked on it that way. | maxfurman wrote: | If we're being pedantic maybe "for Excel" would be clearer? | But what do I know. | hoseja wrote: | That would be my choice too. Both "inside" and "in" imply | "in the spreadsheet". "For", on the other hand I would | understand as "for the Excel program". | anakic wrote: | I was considering "for" but I wanted to imply that the | IDE is actually located inside Excel, rather than being a | separate program. | Jorengarenar wrote: | "working inside"? | yAak wrote: | Yeah, I thought you crafted some Excel monstrosity based on | the title. Maybe a mod can change the title for you to say | "for Excel." | | Also, I would be super proud if I'd created this. Excellent | work!!! | the_only_law wrote: | I would have been both immensely impressed and immensely | horrified if that were the case. | lofatdairy wrote: | I had the same thought lol. Honestly, the fact that such a | thing seems possible at all should be props to the people who | built Excel ___________________________________________________________________ (page generated 2023-01-25 23:00 UTC)