簡體   English   中英

使用公式復制范圍內特定值的單元格

[英]Copying Cells with a Specific Value in a Range using a Formula

我正在嘗試導入並維護一份我的幻想聯盟中所有已采取的幻想足球運動員及其每周平均得分的列表,並且要優於他們。 我可以每頁25個播放器的方式從yahoo獲得此信息,因此我已經建立了一個excel工作簿,每個頁面都將一個具有25個播放器的網絡鏈接導入excel(共10頁)

我的想法是,每周我都可以簡單地將所有頁面刷新到excel,然后在同一工作簿中有另一個工作表瀏覽所有工作表,並將它們放入一個不錯的列表中,以便我操作和使用。 本質上是:

Player Name | Position | Team Name | AVG PTS

不幸的是,導入的信息是一個很小的變量,因此我無法具體引用絕對單元格。 這是因為球員之間的受傷狀態可能會或可能不會額外發生。

我所知道的是,玩家名稱在b列中,開始於B160范圍,結束於最大B250。 b列中每個玩家的名字都可以使用ctrl + f分隔“-”

我想做的是在工作簿的另一張紙上設置一個公式,該公式將:

  1. 在工作表中使用導入的數據搜索此范圍,
  2. 查找此范圍內所有帶有“-”的字符串
  3. 復制/返回完整的單元串,別無其他

我不確定公式是否可以實現這一目標,而且我在這里查看其他帖子也沒有運氣。

這是我使用google docs所做操作的截短版本的鏈接(我覺得人們下載一些隨機的excel文件會很有趣:

https://docs.google.com/spreadsheet/ccc?key=0AvLwUKmn33T6dHhGcEVwWC1KdXpMblJoRGJzMlNWWlE&usp=sharing

如果只有幾張紙,一種簡單的方法是過濾該列,然后在過濾器搜索中鍵入“-”(不帶引號)。 適用於2007年以上的版本。 僅將可見單元格復制並粘貼到您的主工作簿中。

您也可以使用VBA來執行此操作:

Dim sMain As String
Dim sImported As String, lLen As Long
Dim sStart As String
sMain = "ALL TAKEN PLAYERS AVG" 'name of your main sheet
sMainCol = "A" 'column your player names will go in
sImported = "Imported Data " 'string that player sheets start with
lLen = Len(sImported)
sStart = "B160" 'starting cell for imported data

Dim ws As Worksheet
Dim rPlayers As Range, cell As Range
Dim counter As Long

counter = 5 'starting row to fill out players

For Each ws In Worksheets
    If Left(ws.Name, lLen) = sImported Then
        ws.Activate
        Set rPlayers = Range(Range(sStart), Range(sStart).End(xlDown))
        For Each cell In rPlayers
            If InStr(1, cell.Value, " - ") > 0 Then
                Sheets(sMain).Range(sMainCol & counter).Value = cell.Value
                counter = counter + 1
            End If
        Next cell
    End If
Next ws

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM