我需要你的帮助。 我正在用 VBA 编写一小段代码以在 RPA 过程中使用。 我已经在 Excel 中测试了我的公式并且它有效,但是每次当我尝试从 VBA 运行它时它都会崩溃并显示错误代码 1004 并告诉我问题出在代码 .Range("C29").Formula = " =SUMIF(Sheet1!$A$19:$A$1000;$B29;Sheet1!$G$19:$G$1000)"。
将公式更改为简单的公式,效果很好。 还有其他人知道这个问题吗?
Sub FillDown()
Dim strFormulas '(1 To 3) As Variant
With ThisWorkbook.Sheets("MainSheet")
.Range("C29").Formula = "=SUMIF(Sheet1!$A$19:$A$1000;$B29;Sheet1!$G$19:$G$1000)"
.Range("C29:C501").FillDown
End With
End Sub
答案 0 :(得分:0)
检查您的 SUMIF 公式。它包含错误。您的想法是 <script>
var lat = 34.5328, lng = 69.1658;
$("#city").on('change', function (getcity) {
var city = $(this).val();
if (city) {
$.ajax({
url: "cityGeoSelect.php",
type: "POST",
cache: true,
data: {city:city},
dataType : 'json',
success: function(coord){
lat = coord.lat;
lng = coord.lng;
population = coord.population;
mapboxgl.accessToken = '<<mapboxtokenhere>>';
var map = new mapboxgl.Map({
container: 'map',
style: '<<mapboxstylehere>>',
center: [lng,lat],
zoom: population,
interactive: false,
});
var geojson = [];
var geojson = $.getJSON('geoBuildSelect.php?q='+city);
geojson.features.forEach(function (marker) {
// add marker to map
new mapboxgl.Marker()
.setLngLat(marker.geometry.coordinates)
.addTo(map);
});
}
})
}
});
</script>
吗??
答案 1 :(得分:0)
Sub FillDown2()
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("MainSheet")
ws.Range("C29").FormulaLocal = "=SUMIF(Sheet1!$A$19:$A$1000;$B29;Sheet1!$G$19:$G$1000)"
ws.Range("C29:C501").FillDown
End Sub
所以问题是基于我的工作表的设置。 通过添加公式本地,至少我现在不再有错误了,到下一个问题 xD