Edit an item in a filtered list that falls out of the filter

  • I have a list of items (such as tasks).
  • I filter her for a property like her name.
  • In the filtered list I opted for inline editing (at the touch of a button)
  • The new name is outside the above filter

What should I do?

  1. Leave the element with the new name and a name that does not match the filter criteria. Give it up only if I change the filter criteria.
  2. Immediately put it off the list.

I am looking for guidance on best practices and common examples.

Many thanks.

User expectation – How can a constantly changing data list be sorted and filtered?

I have a web page (although I do not think that's relevant, it can also be a desktop or mobile app) that displays a list of events. More and more events arrive and are added to the top of the list as they arrive. We'd like to sort and filter this list, but I'm not sure what to do with incoming events if the list is sorted or filtered by something other than the latest.

For example, if the user filters the list by event type "Jim" and a new event of type "Fred" arrives, it probably will not be displayed. The only thing is that they may keep the list filtered and then not see most incoming events. This will probably confuse you.

Likewise, if you sort the list by (about) duration, shorter first, and a new event with a duration longer than the one shown, do I add it to the list? If so, does it have to be inserted in the right place in the list?

To update In response to the outstanding questions from TripeHound, here's a bit more detail: users will be watching the site during a campaign and their main interest is to see new events. You may be filtering for events that have triggered specific users, sorting for events that have triggered the most or the shortest events, and so on. In short, it's very important for you to see new events.

Who can guess. Many Thanks

Are filtered emails automatically redirected to Gmail?

Let's say I've turned on automatic forwarding from my Gmail account (Account 1) to another Gmail account (Account 2) so that all emails sent to Account 1 are automatically routed to Account 2.

When I create a filter in account 1, some incoming emails are moved to the trash. Will these emails continue to be forwarded to account 2? What happens if this filter is set to archive certain emails – will they be forwarded to account 2?

vba – copy data from the filtered table into defined tabs and go through the defined list, correct missing data records

I am a relative newbie in coding and have my code "Frankensteined" from various pages on the web. At the moment, I have no problems with this code because I only have minimal data lines, but notice that the time required increases with the data lines (as can be expected).

The code I have does the following:
1. Filters a source table with data from a defined list on a different sheet
2. Checks if there is any data after the filter
2a If there is no data
2ai Checks if there is a tab for this company and deletes existing data
2aii If there is no tab, go to the next loop
2b If there is data, the Check tab is present
2bi If there is a tab, clear the data and copy the filtered data to the next loop
2bii If there is no tab, create one from a hidden template, check if the balance line is in another leaf (if it does not exist), then copy all the filtered data and continue to the next in the loop ,
3 Remove all filters and return to my starting point.

For me as a freshman that's pretty complex. So I'm sure I have a lot of redundant lines to clean up my code.

Any help / suggestions / recommendations, gratefully received.

My code:

                Sub Update_Backup_Sheets ()
Dim sh As worksheet
x = 4
Darken LastRow for so long
Dim MyCell As Range, My Range As Range
Troubled lrow for so long
Dim TargetTable As ListObject
Dim NumberOfAreas As Long
Measuring as area
Set Sourcetable = Sheets ("merged data"). ListObjects ("TableFullData")

Application.ScreenUpdating = False
Application.DisplayAlerts = False

'Get the company name on the Company tab

With bedding ("General")
Company name = .Range ("A" & x) .Value
End with

'Delete all filters from the table

LastRow = Range ("B" & row count) .End (xlUp) .Row - 1
Set MyRange = Range ("A20: V" & LastRow)

'Filter by company name

Sourcetable.DataBodyRange.AutoFilter Field: = 2, _
Criterion1: = "=" & company name

On Error Resume Next
If Sourcetable.AutoFilter.Range.Columns (1) .SpecialCells (xlCellTypeVisible) .count <= 1 Then

 ‘Clear Existing Data

     On Error GoTo Continue
        Set sh = Sheets(Company_Name)
     On Error GoTo Continue
        If WorksheetsExists = Not sh Is Nothing Then
        GoTo Continue
        With Sheets(Company_Name).ListObjects(1)
            .DataBodyRange.Offset(1).Resize(.DataBodyRange.Rows.count - 1, .DataBodyRange.Columns.count).Rows.Delete
            End With
        GoTo Continue
    End If

 ‘If Data Exists
 ‘Check if tab exists


    On Error Resume Next
    If Sourcetable.AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).count > 1 Then

On Error Resume Next
Set sh = Sheets (Company_Name)

If WorksheetsExists = Not, then nothing is shallow

'If the tab does not exist, create all relevant records

'Show template if hidden

If Sheets ("Template"). Visible = xlSheetHidden Then Sheets ("Template"). Visible = xlSheetVisible
'Create and rename a worksheet and mark it in yellow
Sheets ("Template") Copy to: = Sheets (4)
ActiveSheet.Range ("A20"). ListObject.Name = "Table" & (company name)
ActiveSheet.Name = (company name)
With ActiveSheet.Tab
.Color = 65535
.TintAndShade = 0
End with

'Check balance download records
'Search for COMPANY NAME

Dim rgfound As Range
Set rgfound = Sheets ("Balance Download"). Range ("A1", "A" & frow - 1) .Find (Company_Name)

If rgfound is nothing, then

"If not found
'Calculate last line

flrow = sheets (balance download). Range ("a" & Rows.count) .End (xlUp) .Row

'Copy last line of data and rename line

With bedding ("Balance Download")
.ListObjects (1) .ListRows.Add
.Rows (flrow) .Copy
.Range ("A" & Arrow + 1) .PasteSpecial Paste: = xlPasteValuesAndNumberFormats, Operation: = xlNone
Application.CutCopyMode = False
.Range ("a" & row + 1) .Value = Company name
End with
End If

Hide template

Sheets ("Template"). Visible = xlSheetHidden

Confirmation message; & # 39

MsgBox "worksheet for" & (company name) & "created"

'Set sh name

Set sh = Sheets (Company_Name)

Next to step 2
End If
End If

'If tab and data are present

Step 2:

Delete existing data and resize the table

With leaves (Company_Name) .ListObjects (1)
.DataBodyRange.Offset (1) .Resize (.DataBodyRange.Rows.count - 1, .DataBodyRange.Columns.count) .Rows.Delete
End with

Find the first row of the table (the last row of the table as previously deleted data)

lrow = Sheets (Company_Name) .Range ("B" & Rows.count) .End (xlUp) .Row

With Sourcetable.DataBodyRange.SpecialCells (xlCellTypeVisible) .Copy
With leaves (company name)
.Range ("A" & lrow) .PasteSpecial Paste: = xlPasteValuesAndNumberFormats, Operation: = xlNone
Application.CutCopyMode = False
End with
End with

End If

'Reset the variable sh

Set sh = Nothing
x = x + 1

'Return to get the name of a new company in the list of employees

Loop While Sheets ("General"). Range ("A" & x) .Value <> ""

'At the end of the loop, turn on the screen update, etc. again

Application.DisplayAlerts = True
Application.ScreenUpdating = True
Sheets ("Amalgamated Data"). Choose

& # 39; Remove all filters from the table

MsgBox "All sheets updated"
End Sub

General Topology – Filtered Colimit of a Topological Space

Suppose that $ X $ is a room filtered through closed subspaces $ X_ {1} subset X_ {2} subset dots $,

As a topological space $ X = operatorname {colim} _ {n} X_ {n} $,
We define $ Y_ {n} = X_ {n + 1} / X_ {n} $, and look at the induced maps $ Y_ {n} rightarrow Y_ {n + 1} $, Define $ Y = operatorname {colim} _ {n} Y_ {n} $,

Question: $ X $ is homeomorphic too $ Y $?

array – To remove duplicate code when performing an action in a Python list filtered after an if statement

I've written the following function for a CLI tool, it works as expected, but it also contains duplicate code.

def populate_teams_tab (self):
teams = self.get_data (self.TEAMS_URL)
return_list = []
    for team in teams:
if self.IS_ROGUE:
if team['id'].upper () == "ROGUE":
# Here I have a few manipulation lines that add everything
# Add the ROGUE teams to a list that will be returned
# I will simplify these steps for clarity with the following line
return_list.append (team)
# Here I have the same manipulation lines that all add
# The teams to a list, which is returned
# I will simplify these steps for clarity with the following line
return_list.append (team)

Is adding another helper function the best idea or is there a more elegant way to get rid of the duplicated part?

angle – Switch between filtered and unfiltered list

I try to filter out records that have no investment amount. When you see the JSON structure, I try to filter the FundClassDetailsViewModel object. I send this data to the child component. I need to provide a toggle feature so that checking the box will show a filtered list and clearing the checkbox will show an unfiltered list. I have created an object called OriginalList, which is initialized at the time the data is retrieved. I save the filtered list in the Term Details object. I can see that the filter works well. I also created an event emitter to issue an event from a parent to a child component called getInvestedDetails. If the box is checked, I will associate a filtered object named TermDetails, otherwise I'll match OriginalList. For some reason, I do not see the original list that contains all the records. What's wrong with my logic

Parent component

public getInvestedDetails (isInvested: boolean) {
if (isInvested) {
this.FundClasses = this.TermDetails.FundClassViewModel;
} else {
this.FundClasses = this.OriginalList.FundClassViewModel;

public getTermsDetails () {
if (this.ManagerStrategyId! = null) {
this.termsService.getTermsDetails (this.ManagerStrategyId) .subscribe ((data: any) => {
this.TermDetails = data;
this.OriginalList = data;
this.FundClasses = this.TermDetails.FundClassViewModel;
this.TermDetails.FundClassViewModel.FundDetailsViewModel.forEach (funDetail => {
funDetail.FundClassDetailsViewModel = funDetail.FundClassDetailsViewModel
.reduce ((prev, next) => prev = prev.concat (next), [])
.filter (obj => obj.InvestedAmount! == null);

JSON data

    {"FundClassViewModel": {"FundDetailsViewModel":[{"CogencyClasses":[{"Id":0,"FundId":0,"ShareClass":"Assign Cogency Fund First","LocalCurrency":null,"Name":"Assign Cogency Fund First "}], "FundClassDetailsViewModel":[{"Id":100541,"Description":"Class A","InvestedAmount":null,"InceptionDate":null,"LegalFundClassId":11167,"LegalFundClassName":"Class A","DataReference":null,"CogencyClassId":null,"CogencyClassName":null,"ClosureStatusId":null,"ClosureStatusName":null,"IsSidePocket":false,"IsThematic":false,"VehicleTypeId":null,"VehicleTypeName":null,"FundId":5508,"FundName":"Sylebra Capital Partners (Offshore) Ltd"},{"Id":250033,"Description":"Class B","InvestedAmount":null,"InceptionDate":null,"LegalFundClassId":11166,"LegalFundClassName":"Class B","DataReference":null,"CogencyClassId":null,"CogencyClassName":null,"ClosureStatusId":null,"ClosureStatusName":null,"IsSidePocket":false,"IsThematic":false,"VehicleTypeId":null,"VehicleTypeName":null,"FundId":5508,"FundName":"Sylebra Capital Partners (Offshore) Ltd"}], "PrimaryLegalFundClasses":[{"Id":11167,"Description":"Class A","ClassType":1},{"Id":11166,"Description":"Class B","ClassType":1}]}, {"CogencyClasses":[{"Id":1121,"FundId":652,"ShareClass":"Class B","LocalCurrency":"USD","Name":"Class B USD"}], "FundClassDetailsViewModel":[{"Id":250028,"Description":"Class A","InvestedAmount":23732600,"InceptionDate":"2019-05-09T00:00:00","LegalFundClassId":13713,"LegalFundClassName":"Class A","DataReference":null,"CogencyClassId":1121,"CogencyClassName":null,"ClosureStatusId":null,"ClosureStatusName":null,"IsSidePocket":false,"IsThematic":false,"VehicleTypeId":null,"VehicleTypeName":null,"FundId":237146,"FundName":"P Sylebra Ltd."},{"Id":250029,"Description":"Class B","InvestedAmount":119307314,"InceptionDate":null,"LegalFundClassId":13717,"LegalFundClassName":"Class B","DataReference":null,"CogencyClassId":null,"CogencyClassName":null,"ClosureStatusId":null,"ClosureStatusName":null,"IsSidePocket":false,"IsThematic":false,"VehicleTypeId":null,"VehicleTypeName":null,"FundId":237146,"FundName":"P Sylebra Ltd."},{"Id":250030,"Description":"Class B1","InvestedAmount":null,"InceptionDate":"2014-05-01T00:00:00","LegalFundClassId":13716,"LegalFundClassName":"Class B1","DataReference":null,"CogencyClassId":null,"CogencyClassName":null,"ClosureStatusId":null,"ClosureStatusName":null,"IsSidePocket":false,"IsThematic":false,"VehicleTypeId":null,"VehicleTypeName":null,"FundId":237146,"FundName":"P Sylebra Ltd."},{"Id":250031,"Description":"Class C","InvestedAmount":null,"InceptionDate":"2014-07-31T00:00:00","LegalFundClassId":13715,"LegalFundClassName":"Class C","DataReference":null,"CogencyClassId":null,"CogencyClassName":null,"ClosureStatusId":null,"ClosureStatusName":null,"IsSidePocket":false,"IsThematic":false,"VehicleTypeId":null,"VehicleTypeName":null,"FundId":237146,"FundName":"P Sylebra Ltd."},{"Id":250032,"Description":"Class D","InvestedAmount":null,"InceptionDate":"2014-07-31T00:00:00","LegalFundClassId":13714,"LegalFundClassName":"Class D","DataReference":null,"CogencyClassId":null,"CogencyClassName":null,"ClosureStatusId":null,"ClosureStatusName":null,"IsSidePocket":false,"IsThematic":false,"VehicleTypeId":null,"VehicleTypeName":null,"FundId":237146,"FundName":"P Sylebra Ltd."}], "PrimaryLegalFundClasses":[{"Id":13713,"Description":"Class A","ClassType":3},{"Id":13717,"Description":"Class B","ClassType":3},{"Id":13716,"Description":"Class B1","ClassType":3},{"Id":13715,"Description":"Class C","ClassType":3},{"Id":13714,"Description":"Class D","ClassType":3}]}], "Vehicle types":[{"Id":108,"Spf":false,"Name":"Secondaries","SortOrder":null,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":100,"Spf":false,"Name":"Co-Investment (non-SPF)","SortOrder":1,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":true,"IsCardiff":true},{"Id":1,"Spf":false,"Name":"FX Trade","SortOrder":2,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":3,"Spf":false,"Name":"Listed ETF","SortOrder":3,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":4,"Spf":false,"Name":"Listed Security","SortOrder":4,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":2,"Spf":false,"Name":"Mutual Fund","SortOrder":5,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":5,"Spf":false,"Name":"Offshore Fund","SortOrder":6,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":6,"Spf":false,"Name":"Onshore US - 40 Act Fund","SortOrder":7,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":9,"Spf":false,"Name":"Onshore US Non - 40 Act Fund","SortOrder":8,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":8,"Spf":false,"Name":"EnTrustPermal Product","SortOrder":9,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":7,"Spf":true,"Name":"EnTrustPermal SPF - Standard","SortOrder":10,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":true,"IsCardiff":false},{"Id":105,"Spf":true,"Name":"EnTrustPermal SPF – 40 Act","SortOrder":10,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":106,"Spf":true,"Name":"EnTrustPermal SPF – UCITS","SortOrder":10,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":102,"Spf":true,"Name":"EnTrustPermal SPF - Blocker","SortOrder":10,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":103,"Spf":true,"Name":"EnTrustPermal SPF - Co-Investment","SortOrder":10,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":true,"IsCardiff":true},{"Id":104,"Spf":true,"Name":"EnTrustPermal SPF - Special Sit","SortOrder":10,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":true,"IsCardiff":true},{"Id":10,"Spf":false,"Name":"Private Equity","SortOrder":11,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":true,"IsCardiff":false},{"Id":101,"Spf":false,"Name":"Side-Pocket","SortOrder":12,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":true,"IsCardiff":false},{"Id":11,"Spf":false,"Name":"Special Situation (non-SPF)","SortOrder":13,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":true,"IsCardiff":true},{"Id":12,"Spf":false,"Name":"Third Party Fund of Funds","SortOrder":14,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":13,"Spf":false,"Name":"UCITS","SortOrder":15,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false},{"Id":14,"Spf":false,"Name":"Other","SortOrder":50,"AumReadOnly":false,"PerformanceReadOnly":false,"BloombergTickerRequired":false,"ClassLevel":false,"IsCardiff":false}], "ClosureStatuses":[{"Id":110,"Name":"Hard Closed","IsActive":true,"SortOrder":null},{"Id":111,"Name":"Open","IsActive":true,"SortOrder":null},{"Id":112,"Name":"Soft Closed","IsActive":true,"SortOrder":null},{"Id":1,"Name":"Open - to all","IsActive":true,"SortOrder":1},{"Id":2,"Name":"Open - to Permal only","IsActive":true,"SortOrder":2},{"Id":3,"Name":"Closed - hard","IsActive":true,"SortOrder":3},{"Id":104,"Name":"Closed - with wait list","IsActive":true,"SortOrder":4},{"Id":100,"Name":"Closed - but will reopen","IsActive":true,"SortOrder":5},{"Id":21,"Name":"Closed - but replacing redemptions","IsActive":true,"SortOrder":6},{"Id":101,"Name":"Redemptions Gated","IsActive":true,"SortOrder":7},{"Id":102,"Name":"Redemptions Suspended","IsActive":true,"SortOrder":8},{"Id":103,"Name":"In Liquidation","IsActive":true,"SortOrder":9}]}, "FundTermsViewModel": null, "LegalFundClassViewModel": null}

Child component

    @Output () termDetailsEvent = new EventEmitter();

parent component html

bitcoin core – Faked or not filtered with the cpu (some websites)

In general, there are two things that mining requires:

  • Computing power (CPU / GPU)
  • R.A.M.

Bitcoin has a tiny amount of RAM, but Ethereum requires a few GB of RAM.

How can some websites be broken down using the client CPU?

Using Javascript (unfortunately, there are more efficient ways like TurboJS or GPUJS or WebAssembly). Basically they try xs with different nonce fields up Hash (x) is less than a target value.

Bitcoin mining is possible wherever general processing power is available. Is that possible? No. Due to ASIC miners, CPU or even GPU mining has higher power costs compared to mining sales.

On the other hand, it can be different for other coins like Monero. You may have heard of CoinHive, where there were proof-of-work captchas that had to break down Monero for a few seconds. Because Monero is ASIC-resistant, CPU mining used to be efficient. (Until February 2019, when the CoinHive miner was hired because of the sinking value of Monero).

It's likely to be a scam, otherwise it's unprofitable for you (assuming you're paying for electricity).

Ease of use – navigate from a filtered list to the default view?

For example, I design a website to display a list of items. I would like to add a category filter to show only the elements of a particular category.

Now I wonder how the user should be return from the filtered list to the standard list of elements. Should I just add a "home" link or a button? Should I use "breadcrumbs" with a "home" link? What would you suggest ?