User Profile
Lorenzo
Silver Contributor
Joined Sep 04, 2017
User Widgets
Recent Discussions
Re: Trying to fill Column using partial match from another Sheet
Hi CRenaud I would recommend you format your data as structured Tables Below Table1 is what you have in Sheet1, Table2 represents your Sheet2 (Tables can be on separate sheets) in I4 =XLOOKUP( [@[Client Number]], ( Table1[Client Number] & Table1[-0 / -1] ), Table1[Phone Number], "No match" )1View0likes0CommentsChart from dynamic array challenge
Hi (Excel 365 v2512 b19530.20144 Current Channel / Windows 11 25H2) Charts are definitively not my thing. Spent hours on the following, searching, testing… to no available The below chart data range is a dynamic array (could be wrong for the desired chart) - named GRAPH_Series on sheet GRAPH_Ranges - similar to the array on the left side of the pic. The arrays dynamically resize according to the 'START Year' & 'TOPN Cat' variables - so far so good Setting the Chart data range as =GRAPH_Ranges!GRAPH_Series and changing nothing else, the chart updates as expected according to 'START Year' & 'TOPN Cat'. On the other hand if I change anything in the Select Data Source dialog box the chart won't update properly anymore The expected chart is the same as above with 2020, 2021...2025 (instead of 1, 2,...6) horizontally & D, F, B, A as legend Thanks & any question please let me know Lz. EDIT: Cross posted here on Jan 29, 2026130Views1like0CommentsRe: Help with a Formula
Hey NikolinoDE My question was a bit provocative 😉 This won't work in any case due to nested arrays: =MAP( {"1,2,3";"10,20,30"}, LAMBDA(x, LET( cleaned, TRIM(SUBSTITUTE(x, CHAR(160), "")), IF(cleaned = "", {""}, TEXTSPLIT(cleaned, ",")) ) ) ) // #CALC! (Nested arrays) =MAP( {"1,2,3";"10,20,30"}, LAMBDA(x, TEXTSPLIT(x, ",") ) ) // #CALC! (Nested arrays) Classic option: =LET( array, {"1,,2,3,,4";"10,20,,30"}, delim, CHAR(44), StackSplitted, LAMBDA(initial,array, VSTACK( initial, IF( LEN(array), TEXTSPLIT(array, delim,, TRUE ), "" ) ) ), IFNA( DROP( REDUCE("", array, StackSplitted ), 1 ), "" ) )8Views0likes0CommentsRe: Top n vs. Others in Excel
Hi Anonymous29007 Attached is a very simplified version of your Brands report. No more dependency on the Data Model, CUBE/MDX formulas… Instead : Slicers are connected to TableSource TableSource has an hidden [NOT Filtered] column with formula that indicates if a row is filtered according to the slicer selections Above column is used as the filter_array arg. of the PIVOTBY formula. Using PERCENTOF (instead of SUM) as function & setting the appropriate col_sort_order allows sorting as expected & calculating the percentages as a single pass. The grouping the other Brands - if any - is done/calculated from the same array // TOPN_BRANDS_REPORT =LAMBDA([top_n], LET( TOPN_Value, IF( ISOMITTED( top_n ), TOPN_Default, top_n ), pivotedBrands, PIVOTBY( TableSource[Year], TableSource[Brand], TableSource[Values Month], PERCENTOF, 0, 0, 1, 0, -2, TableSource[NOT_Filtered], 1 ), IF( COLUMNS( pivotedBrands ) -1 >= TOPN_Value, LET( arrTopn, CHOOSECOLS( pivotedBrands, SEQUENCE(, TOPN_Value, 2 ) ), TopnValues, DROP( arrTopn, 1 ), OtherValues, BYROW( TopnValues, LAMBDA(rw, 1 - SUM( rw ) ) ), GroupedBrands, VSTACK( HSTACK( TAKE( arrTopn, 1 ), GROUPED_BrandsName ), HSTACK( TopnValues, OtherValues ) ), HSTACK( TAKE( pivotedBrands,, 1 ), GroupedBrands ) ), pivotedBrands ) ) ) Remains the challenge of the Chart I couldn't make fully dynamic (cf. Chart from dynamic array challenge | Microsoft Community Hub), hence the 'CHART' helper sheet in the workbook. If by any chance someone finds a solution to this issue I'll let you know... Cheers Lz.1View1like0CommentsRe: Formula help - daily pay vs supplement monthly payments
Hi Brirack77 A Power Query option in attached file with Sheet 'Data', 2 tables named SetOne & SetTwo Sheet 'Result' the output of the query (pic. cropped): How To use: Enter your data in the SetOne & SetTwo tables (they can be on seperate sheets) Switch to sheet 'Result' Right-click somewhere in the green table > Refresh* * Can auto-refresh every n minutes if necessary but I wouldn't recommend with 2K Emp.56Views1like2CommentsRe: Extract mm.yyyy from text
Hi SDj1 Obviously your samples didn't reflect all the variations that exist in your DB - never easy I hope you sorted it out finally. Otherwise & if your DB isn't top secret feel free to share it (i.e. with OneDrive, Google Drive or the like) and I'll see if there a way to do something without manual operations Cheers Lz.22Views1like0CommentsRe: is it possible to capture HH:MM from the cell in text format DD-MM-YYYY HH:MM
Hi Ka_ChunL (Apologies for the delay but this site/forum did not notify me) I have a problem when OT start time and end time are not in same day Understood but you posted Start Time and End Time with Time values only. Post you complete Date Time values instead - Please29Views0likes0CommentsRe: Extract mm.yyyy from text
Hello SDj1 Believe it or not, extracting from +/- inconsistent strings is a quite common request on forums If one of the proposals you got solves your issue it would help people who Search for existing solution that you mark the corresponding post (Mark as solution at the bottom of each reply you get here) Thanks & no rush42Views1like0CommentsRe: Help with a Formula
Hi tonyceccato Why selecting range Detail!$A:$BZ when you actually use max. Detail!$A:$BP (col. 68)? As already suggested by VBasic2008, Format your data as Table if possible. Range Detail!$A:$BP means 1 million rows * 68 cols In the below option: Assumed column Detail!BP:BP has no blank/empty cell(s) between the 1st and last used row in that column. This to resize/shrink your data range (Detail!$A:$BZ) to what's actually required (base + columns to split only) Should they exist in columns to split, strings like: " , Peach ,Grapes", "Peach,Strawberry, ,Raspberry,,,"... are managed to prevent extra columns when splitting * =LET( DataRange, Detail!A1:BZ1000, CountifCriteriaRange, B16:B25, delim, CHAR(44), nbspace, CHAR(160), Normalize, LAMBDA(str, LET( ReplacedNbs, SUBSTITUTE(str, nbspace, "" ), ReplacedEmpty, REGEXREPLACE(ReplacedNbs, "(^\s*,\s*|,\s*(?=,|$))", "" ), TRIM( REGEXREPLACE(ReplacedEmpty, "\s*,\s*", "," ) ) ) ), SplitToCols, LAMBDA(array,[normalized], LET( Normalized, IF( normalized = TRUE, array, Normalize(array) ), Thunk, LAMBDA(x, LAMBDA(x) ), Split, LAMBDA(array, IF( LEN(array), TEXTSPLIT(array, delim,, TRUE ), "" ) ), ThunkSplit, LAMBDA(accum,array, Thunk( Split( array ) ) ), arrThunks, SCAN(0, Normalized, ThunkSplit ), ExpandThunk, LAMBDA(rw,cl, INDEX( INDEX( arrThunks, rw, 1 )(), 1, cl ) ), MaxOutCols, MAX( LEN(Normalized) - LEN( SUBSTITUTE( Normalized, delim, "" ) ) ) +1, Splitted, MAKEARRAY( ROWS(array), MaxOutCols, ExpandThunk ), IFERROR( Splitted, "" ) ) ), RowsBP, COUNTA( Detail!BP:BP ), NormalizedBW, Normalize( TAKE( CHOOSECOLS(DataRange, 49 ), RowsBP ) ), ShrinkedData, HSTACK( INDEX(DataRange, SEQUENCE( RowsBP ), {1,3,4,5,53,68} ), NormalizedBW ), FilteredData, FILTER( ShrinkedData, IFNA( XMATCH( CHOOSECOLS(ShrinkedData, 6), CountifCriteriaRange ), 0 ) * ( CHOOSECOLS(ShrinkedData, 7) <> "" ) ), Base, CHOOSECOLS( FilteredData, {1,2,3,4,6} ), StackedArrays, HSTACK( Base, SplitToCols( CHOOSECOLS( FilteredData, 7 ), TRUE ), SplitToCols( CHOOSECOLS( FilteredData, 5 ) ) ), SORT( UNIQUE( StackedArrays ), 1, TRUE ) ) * RegEx by Copilot0Views0likes0CommentsRe: Merging FROM and TO dates to 1 cell
Hi Not knowing: Version of Excel you use, assumed >/= 2021 How dates are formatted according to your Regional Settings, assumed dd-mm-yyyy Where your TO/FROM dates seat on the sheet, assumed TO below FROM in C2 above: =TEXTJOIN( " TO ",, TEXT( C3:C4, "dd-mm-yyyy" ) )75Views0likes3CommentsRe: Extract mm.yyyy from text
Hi SDj1 Your examples were definitively required as your pseudo-dates are not always in mm.yyyy format as you initially said. Anyway, with your example in B2:B21 below (pic. cropped) in D2: =LET( afterDated, TEXTAFTER( B2:B21, "dated " ), beforePdf, TEXTBEFORE( afterDated, ".pdf" ), TRIM( TEXTBEFORE( beforePdf, " invoice ",,,, beforePdf ) ) ) Attaching a sample file & crossing fingers it won't be dropped by this site... EDIT A variant that replaces months in MMMM format with their corresponding number: With a LAMBDA named EXTRACT_DATE stored in the Name Manager, in F2: =EXTRACT_DATE( B2:B21 ) where EXTRACT_DATE is: =LAMBDA( reference, LET( seq, SEQUENCE( 12 ), months, TEXT( DATE( 2000, seq, 1 ), " MMMM " ), replacer, IF( seq < 10, ".0" & seq, "." & seq ) & ".", EXTRACT, LAMBDA( rw, LET( searchMonths, IFERROR( SIGN( SEARCH( months, rw ) ), 0 ), monthsAsMM, IF( SUM( searchMonths ) = 0, rw, SUBSTITUTE( rw, XLOOKUP( 1, searchMonths, months ), XLOOKUP( 1, searchMonths, replacer ) ) ), TEXTBEFORE( TEXTAFTER( monthsAsMM, "dated " ), {".pdf"," invoice "} ) ) ), BYROW( reference, EXTRACT ) ) )2Views1like0Comments
Recent Blog Articles
No content to show