I have a IMPORTHTML formula which imports a certain table from a website - but, of course, it doesn't import the images in that table too.
I was wondering how I might be able to do this.
Using vlookup, I have been able to find where the image is and everything, but I have tried using IMAGE() in a number of different places and it will never pull over the data. Really not sure how to do it.
Ideally, I would like to modify the IMPORTHTML formula in A1 to allow it to include images as well, but if I need to put it in D2 like I previously have been, then that's completely ok.
Formulas used in the images:
=IMPORTHTML("https://boards.habbousdf.com/showthread.php?tid=155","table",9)
=VLOOKUP(A2,IMPORTHTML("https://boards.habbousdf.com/showthread.php?tid=155","table",9),3,FALSE)
I was able to achieve this using the formula below
ArrayFormula(image(query(iferror(regexextract(lambda(x,filter(x,scan(,x,lambda(a,c,a+regexmatch(c,"table")))=*{table ID}*))(query(to_text(flatten(importdata("*{URL}*"))),"where Col1<>''",)),"src=.(.*\.png)")),"where Col1<>''",)))
Related
I have a spreadsheet that has a lot of sheets of data grouped by category. I have a main sheet that I want a user to be able to choose which categories of data to use, and it will pull that data into one long list.
Here is an example spreadsheet of what I want to do: LINK TO SHEET
I could combine all the data into one spreadsheet, but if I were to do that with the dataset I am working with, I would have tens of thousands of rows. So, having the data stored on separate sheets is preferred. I am open to having separate spreadsheets altogether if that will make it easier. Currently, I have tried Using INDIRECT and QUERY, but can only get the first sheet of data to show.
I would prefer to stick to normal functions, but could jump into appscript if I need to create a custom formula
I have tried using INDIRECT and CONCAT, and can get the first set of data, but not subsequent data. Also tried wrapping it in a query like this:
=QUERY({ARRAYFORMULA(INDIRECT(CONCAT(A2:A,"!a2:z100"))},"select * where Col1 is not null",1))
Splitting it up into separate spreadsheets, I was able to use the function:
=QUERY({ARRAYFORMULA(IMPORTRANGE(B2:B,"A1:Z10"))},"select * where Col1 is not null",1)
But it also would only pull the first set of data, not the subsequent rows.
All of this was me first attempting to get the information, not getting the information filtered by the sheets that were checked as well. I am pretty familiar with appscript as well and open to appscript solutions, but would prefer to stay away from it if possible.
You do not need additional column. Use REDUCE() with few other formula-
=REDUCE(HSTACK("Dataset Name","Data 1","Data 2","Data 3","Data 4"),FILTER(A2:A,B2:B=TRUE),
LAMBDA(x,y,VSTACK(x,QUERY(INDIRECT(y&"!A2:E"),"where A is not null"))))
I have an issue and trying to resolve it. Basically what I need to do is to compare two separate columns and see if there are some duplicates, then create separate column that will show this particular data.
Please note that this formula will need to validate different sort of symbols. I attached temple how it supposed to look like.
Since you tagged both Google sheets and Excel I'll reply for an Excel solution. Note that Google sheets and Excel aren't the same:
=FILTER(A2:A6,ISNUMBER(XMATCH(A2:A6,B2:B6)))
Im having trouble importing data from my another sheet. Its quite big, has over 500 rows and to 100 columns. (I dont know if thats important but it has about 50 sheets, I want to import from first biggest one)
Importhtml and importdata take too long to load and then say that source is too big.
But what I want is importrange and that says internal error all the time.
Do you have any advice how can I import my data? Maybe even how to change source so it can be imported from?
Sheet I want import to
The function to use is IMPORTRANGE
=IMPORTRANGE("XXXXXXXXXX";"Prices!A1:AJ")
(where XXXXXXXXX is the sheet ID)
Pro tip
But what I want is importrange and that says internal error all the time.
A good practice is to first link the two sheets by using a very small range like:
=IMPORTRANGE("XXXXXXXXXX";"Prices!A1:A3")
and then change the range to meet your needs
=IMPORTRANGE("XXXXXXXXXX";"Prices!A1:AJ")
Try coupler.io.
It has a free plan and allows to COPY the data from one spreadsheet to another on a schedule. It means you can split your calculations, make heavy ones on one spreadsheet and then copy results to the one when you work with them.
It also allows to import from CRM, financial apps etc, but your case is covered with GSheet -> Gsheet import.
I am creating a home budget for myself in Google Sheets, working in Chrome on Windows 10. In the end, the budget will be composed of separate sheets for each month, containing tables for each Friday (payday) within that month. All such tables will follow a certain format and will pull arrays of budget data from an auxiliary sheet.
However, trial-and-error (mostly error) is abundant, and one quails at the thought of having to paste corrections across 52 tables. Is there any way to have each table emulate a formula set down in a template? For example, ideally, my template would contain something like:
=INDEX(IF(condition(relativeCell),namedRange1,namedRange2)
and the final product would pull that formula (with relative reference) to each table. If I discover a mistake or need to make a change, I can simply change the template, and all of the live tables would update their formulas.
Can this be done in Google Sheets?
Failing that, I already have a function that returns a cell's formula as string text. Can this be used to get the desired effect?
there is a formula called INDIRECT which does exactly that:
https://support.google.com/docs/answer/3093377?hl=en
I have a main sheet in witch I copy it and create different versions, kind of like simulating different results.
But every time I want to change something in the main sheet, I have to go in all the other sheets I created and changed.
I don't know if it is possible, but the best way for me would be to create a formula like this:
copyFormula(Sheet1!V2) -> And bringed the exactly same result as if I had gone to Sheet1 copied V2 and pasted it this cell.
I tried to create this formula but failed consistently.
Thanks!!
What you need to do is to manipulate the properties of the sheets.
Here is a reference where you can create those actions.
The Sheets API allows you to create sheets, delete sheets, and control
their properties. The examples on this page illustrate how some common
sheet operations can be achieved with the API.
In these examples, the placeholders spreadsheetId and sheetId are
used to indicate where you would provide those IDs. The spreadsheet
ID can be discovered from the spreadsheet URL; the sheet ID can be
obtained from the spreadsheet.get method.
You can refer to this documentation on how you can read the formula you are needing in the entire sheets.
The Sheets API allows you to read values from cells, ranges, sets of
ranges and entire sheets. The examples on this page illustrate how
some common read operations can be achieved with the
spreadsheets.values collection of this API. You can also read
cell values using the spreadsheets.get method, but in most cases
using spreadsheets.values.get or
spreadsheets.values.batchGet is easier to use.