I think a good approach here would be to read each sheet into a list of data frames, stack them into a single data frame that includes an identifier for the source sheet, and then plot using ggplot2.
Here's an example with a simple Excel file called test.xlsx that I created. It has three sheets, each with four rows of data, as illustrated below. The code assumes that the Excel file is in the current working directory. If not, provide the appropriate path to the file when you read the data. I've used the readxl package to read the data. This method generalizes to an Excel workbook with any number of sheets with the same column names (though you could do additional processing to deal with different column names in different sheets).
library(readxl)
library(dplyr)
library(ggplot2)
# Get sheet names
sht = excel_sheets("test.xlsx")
sht
[1] "Sheet 3" "Sheet 2" "Sheet1"
# Read each sheet into a list
df = lapply(setNames(sht, sht), function(s) read_excel("test.xlsx", sheet=s))
df
$`Sheet 3`
x y
1 1 10
2 2 11
3 3 12
4 4 13
$`Sheet 2`
x y
1 1 5
2 2 6
3 3 7
4 4 8
$Sheet1
x y
1 1 1
2 2 2
3 3 3
4 4 4
# Convert to a single data frame with a column for the source sheet
df = bind_rows(df, .id="Sheet")
# Plot
ggplot(df, aes(x,y,colour=Sheet)) +
geom_line() +
scale_y_continuous(limits=c(0,max(df$y))) +
theme_classic()
