Description: Try to find a cell style by rows, and it will find by columns. Try to find a cell style by columns, and it will find by rows. Steps to Reproduce: 1. Open the Find and Replace dialog 2. Mark [x] Cell Styles 3. Choose a style in the Find field 4. Find Next 5. Choose (•) Columns (for Direction) 6. Find Next Actual Results: After step 4, next find is in the same column. After step 6, next find is in the same row. Expected Results: After step 4, next find is in the same row. After step 6, next find is in the same column. Reproducible: Always User Profile Reset: No Additional Info: Versión: 6.4.7.2 (x86) Id. de compilación: 639b8ac485750d5696d7590a72ef1b496725cfb5 Subprocs. CPU: 4; SO: Windows 6.1 Service Pack 1 Build 7601; Repres. IU: predet.; VCL: win; Configuración regional: es-AR (es_MX); Idioma de IU: es-ES Calc: threaded Version: 7.5.9.2 (x86) / LibreOffice Community Build ID: cdeefe45c17511d326101eed8008ac4092f278a9 CPU threads: 4; OS: Windows 6.1 Service Pack 1 Build 7601; UI render: Skia/Raster; VCL: win Locale: es-MX (es_MX); UI: en-US Calc: threaded Version: 7.6.5.2 (x86) / LibreOffice Community Build ID: 38d5f62f85355c192ef5f1dd47c5c0c0c6d6598b CPU threads: 4; OS: Windows 6.1 Service Pack 1 Build 7601; UI render: Skia/Raster; VCL: win Locale: es-MX (es_MX); UI: es-ES Calc: threaded Version: 24.2.0.3 (x86) / LibreOffice Community Build ID: da48488a73ddd66ea24cf16bbc4f7b9c08e9bea1 CPU threads: 4; OS: Windows 6.1 Service Pack 1 Build 7601; UI render: Skia/Raster; VCL: win Locale: es-MX (es_MX); UI: es-ES Calc: threaded
On pc Debian x86-64 with master sources updated today, I could reproduce this. Code pointer: https://opengrok.libreoffice.org/xref/core/sc/source/core/data/table6.cxx?r=8ef4dc07#624 I tried this: diff --git a/sc/source/core/data/table6.cxx b/sc/source/core/data/table6.cxx index 243783c55d2e..240b2802962d 100644 --- a/sc/source/core/data/table6.cxx +++ b/sc/source/core/data/table6.cxx @@ -637,7 +637,7 @@ bool ScTable::SearchStyle(const SvxSearchItem& rSearchItem, SCCOL& rCol, SCROW& bool bBack = rSearchItem.GetBackward(); short nAdd = bBack ? -1 : 1; - if (bRows) // by row + if (!bRows) // by column { if ( !IsColValid( nCol ) ) { @@ -661,7 +661,7 @@ bool ScTable::SearchStyle(const SvxSearchItem& rSearchItem, SCCOL& rCol, SCROW& } while ( !bFound && IsColValid( nCol ) ); } - else // by column + else // by row { SCCOL aColSize = aCol.size(); std::vector< SCROW > nNextRows ( aColSize ); It worked but the weird thing is with columns direction , I got "Search key not found" at the end instead of looping again. I don't have this with rows direction. Also, without the patch, the direction is wrong but the loop works in both cases. I suppose it'll require a less naive patch.